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