输出服务是AEM文档服务的一部分的OSGi服务。 输出服务支持AEM Forms设计器的各种输出格式和输出设计功能。 输出服务可以转换XFA模板和XML数据以生成各种格式的打印文档。
输出服务允许您创建应用程序,它们允许您:
输出服务是32位应用程序。 在Microsoft Windows上,32位应用程序最多可使用2 GB内存。 该限制也适用于输出服务。
通常,您使用AEM Forms设计器创建模板。 通过输出服务的generatePDFOutput
和generatePrintedOutput
API,您可以直接将这些模板转换为各种格式,包括PDF、PostScript、ZPL和PCL。
generatePDFOutput
操作生成PDF,而generatePrintedOutput
操作生成PostScript、ZPL和PCL格式。 这两个操作的第一个参数接受模板文件的名称(例如ExpenseClaim.xdp
)或包含模板的文档对象。 指定模板文件的名称时,还应指定内容根作为包含模板的文件夹的路径。 可以使用PDFOutputOptions
或PrintedOutputOptions
参数指定内容根。 有关可以使用这些参数指定的其他选项的详细信息,请参阅Javadoc。
第二个参数接受与模板合并的XML文档,同时生成输出文档。
generatePDFOutput
操作还可以接受基于XFA的PDF表单作为输入,并将非交互式版本的PDF表单作为输出返回。
考虑一种情况,即您拥有一个或多个模板以及每个模板的多个XML数据记录。
使用输出服务的generatePDFOutputBatch
和generatePrintedOutputBatch
操作为每个记录生成打印文档。
您还可以将记录合并为一个文档。 这两个操作都采用四个参数。
第一个参数是一个映射,它包含一个任意字符串作为键,模板文件的名称作为值。
第二个参数是另一个Map,其值是包含XML数据的文档对象。 该键与您为第一个参数指定的相同。
generatePDFOutputBatch
或generatePrintedOutputBatch
的第三个参数分别为PDFOutputOptions
或PrintedOutputOptions
类型。
参数类型与generatePDFOutput
和generatePrintedOutput
操作的参数类型相同,具有相同的效果。
第四个参数的类型为BatchOptions
,用于指定是否可以为每个记录生成单独的文件。 此参数的默认值为false。
generatePrintedOutputBatch
和generatePDFOutputBatch
都返回类型为BatchResult
的值。 该值包含一列表生成的文档。 它还包含一个XML格式的元数据文档,其中包含与生成的每个文档相关的信息。