使用PDF/A文档

关于DocConverter服务

DocConverter服务可以将PDF文档转换为PDA/A文档。 您可以使用此服务完成这些任务:

注意

有关DocConverter服务的详细信息,请参见AEM Forms的服务参考

将文档转换为PDF/A文档

您可以使用DocConverter服务将PDF文档转换为PDF/A文档。 由于PDF/A是用于长期保留文档内容的存档格式,所有字体都是嵌入的,文件是未压缩的。 因此,PDF/A文档通常大于标准PDF文档。 此外,PDF/A文档不包含音频和视频内容。 在将PDF文档转换为PDF/A文档之前,请确保PDF文档不是PDF/A文档。

PDF/A-1规范包含两个符合性级别,即A和B。二者之间的主要区别在于逻辑结构(辅助功能)支持,这是符合性级别B所不要求的。无论符合性级别如何,PDF/A-1都指示所有字体都嵌入在生成的PDF/A文档中。 目前,验证(和转换)只支持PDF/A-1b。

虽然PDF/A是归档PDF文档的标准,但如果标准PDF文档符合您的公司的要求,则不必将PDF/A用于归档。 PDF/A标准的目的是建立一个PDF文件,用于长期存档和文档保存需求。

注意

有关DocConverter服务的详细信息,请参见AEM Forms的服务参考

步骤的摘要

要将PDF文档转换为PDF/A文档,请执行以下步骤:

  1. 包括项目文件。
  2. 创建DocConvert客户端
  3. 引用PDF文档以转换为PDF/A文档。
  4. 设置跟踪信息。
  5. 转换文档。
  6. 保存PDF/A文档。

包括项目文件

在开发项目中包含必要的文件。 如果您使用Java创建客户端应用程序,请包含必要的JAR文件。 如果您使用Web服务,请确保包含代理文件。

必须将以下JAR文件添加到项目的类路径中:

  • adobe-livecycle-client.jar
  • adobe-usermanager-client.jar
  • adobe-docconverter-client.jar
  • adobe-utilities.jar(如果AEM Forms部署在JBoss Application Server上,则为必需)
  • jbossall-client.jar(如果AEM Forms部署在JBoss Application Server上,则为必需)

有关这些JAR文件的位置的信息,请参阅包括AEM FormsJava库文件

创建DocConvert客户端

在以编程方式执行DocConverter操作之前,必须创建DocConverter客户端。 如果您使用Java API,请创建DocConverterServiceClient对象。 如果您使用DocConverter Web服务API,请创建DocConverterServiceService对象。

引用PDF文档以转换为PDF/A文档

检索PDF文档以转换为PDF/A文档。 如果尝试将PDF文档(如Acrobat表单)转换为PDF/A文档,将导致异常。

设置跟踪信息

您可以设置一个运行时选项,它确定在转换过程中跟踪的信息量。 即,您可以设置九个不同级别,指定DocConverter服务在将PDF文档转换为PDF/A文档时跟踪的信息量。

转换文档

在创建DocConverter服务客户端后,引用PDF文档进行转换并设置指定跟踪信息量的运行时选项,您可以将PDF文档转换为PDF/A文档。

保存PDF/A文档

可将PDF/A文档另存为PDF文件。

另请参阅

使用Java API将文档转换为PDF/A文档

使用Web服务API将文档转换为PDF/A文档

包括AEM FormsJava库文件

设置连接属性

以编程方式确定PDF/A兼容性

使用Java API将文档转换为PDF/A文档

使用Java API将PDF文档转换为PDF/A文档:

  1. 包括项目文件

    在Java项目的类路径中包含客户端JAR文件,如adobe-docconverter-client.jar。

  2. 创建DocConvert客户端

    • 创建包含连接属性的ServiceClientFactory对象。
    • 使用DocConverterServiceClient对象的构造函数并传递ServiceClientFactory对象,创建<a0/>对象。
  3. 引用PDF文档以转换为PDF/A文档

    • 创建一个java.io.FileInputStream对象,该对象使用其构造函数并传递一个指定PDF文件位置的字符串值来表示要转换的PDF文档。
    • 使用com.adobe.idp.Document对象的构造函数并传递java.io.FileInputStream对象,创建<a0/>对象。
  4. 设置跟踪信息

    • 使用PDFAConversionOptionSpec对象的构造函数创建<a0/>对象。
    • 通过调用PDFAConversionOptionSpec对象的setLogLevel方法并传递指定跟踪级别的字符串值来设置信息跟踪级别。 例如,传递值FINE。 有关不同值的信息,请参见AEM FormsAPI参考中的setLogLevel方法。
  5. 转换文档

    通过调用DocConverterServiceClient对象的toPDFA方法并传递以下值,将PDF文档转换为PDF/A文档:

    • 包含要转换的PDF文档的com.adobe.idp.Document对象
    • 指定跟踪信息的PDFAConversionOptionSpec对象

    toPDFA方法返回一个PDFAConversionResult对象,它包含PDF/A文档。

  6. 保存PDF/A文档

    • 通过调用PDFAConversionResult对象的getPDFA方法检索PDF/A文档。 此方法返回一个com.adobe.idp.Document对象,它表示PDF/A文档。
    • 创建一个java.io.File对象,它表示PDF/A文件。 确保文件扩展名为。pdf。
    • 通过调用com.adobe.idp.Document对象的copyToFile方法并传递java.io.File对象,用PDF/A数据填充文件。

另请参阅

使用PDF/A文档

快速开始(SOAP模式):使用Java API将文档转换为PDF/A文档

包括AEM FormsJava库文件

设置连接属性

使用Web服务API将文档转换为PDF/A文档

使用DocConverter API(Web服务)将PDF文档转换为PDF/A文档:

  1. 包括项目文件

    • 创建一个使用DocConverter WSDL的Microsoft .NET客户端程序集。
    • 引用Microsoft .NET客户端程序集。
  2. 创建DocConvert客户端

    • 使用Microsoft .NET客户端程序集,通过调用其默认构造函数创建一个DocConverterServiceService对象。
    • DocConverterServiceService对象的Credentials数据成员设置为一个System.Net.NetworkCredential值,该值指定用户名和口令值。
  3. 引用PDF文档以转换为PDF/A文档

    • 使用BLOB对象的构造函数创建<a0/>对象。 BLOB对象用于存储转换为PDF/A文档的PDF文档。
    • 通过调用System.IO.FileStream对象的构造函数并传递一个字符串值,该字符串值表示PDF文档的文件位置以及在中打开文件的模式。
    • 创建存储System.IO.FileStream对象内容的字节数组。 通过获取System.IO.FileStream对象的Length属性,可以确定字节数组的大小。
    • 通过调用System.IO.FileStream对象的Read方法并传递要读取的字节数组、开始位置和流长度,用流数据填充字节数组。
    • 通过为binaryData对象的<a1/>属性指定字节数组的内容,填充BLOB对象。
  4. 设置跟踪信息

    • 使用PDFAConversionOptionSpec对象的构造函数创建<a0/>对象。
    • 通过为PDFAConversionOptionSpec对象的logLevel数据成员指定指定跟踪级别的值来设置信息跟踪级别。 例如,将值FINE分配给此数据成员。
  5. 转换文档

    通过调用DocConverterServiceService对象的toPDFA方法并传递以下值,将PDF文档转换为PDF/A文档:

    • 包含要转换的PDF文档的BLOB对象
    • 指定跟踪信息的PDFAConversionOptionSpec对象

    toPDFA方法返回一个PDFAConversionResult对象,它包含PDF/A文档。

  6. 保存PDF/A文档

    • 通过获取PDFAConversionResult对象的PDFADocument文档成员的值,创建存储PDF/A数据的BLOB对象。
    • 创建一个字节数组,用于存储使用PDFAConversionResult对象返回的BLOB对象的内容。 通过获取BLOB对象的binaryData数据成员的值,填充字节数组。
    • 通过调用System.IO.FileStream对象的构造函数并传递一个字符串值,该字符串值表示PDF/A文档的文件位置。
    • 通过调用System.IO.BinaryWriter对象的构造函数并传递System.IO.FileStream对象,创建<a0/>对象。
    • 通过调用System.IO.BinaryWriter对象的Write方法并传递字节数组,将字节数组的内容写入PDF文件。

另请参阅

使用PDF/A文档

使用Base64编码调用AEM Forms

创建使用Base64编码的。NET客户端程序集

以编程方式确定PDF/A兼容性

您可以使用DocConverter服务确定PDF文档是否符合PDF/A规范。 有关PDF/A文档以及如何将PDF文档转换为PDF/A文档的信息,请参阅将文档转换为PDF/A文档

注意

有关DocConverter服务的详细信息,请参见AEM Forms的服务参考

步骤的摘要

要确定PDF/A规范,请执行以下步骤:

  1. 包括项目文件。
  2. 创建DocConvert客户端
  3. 参考用于确定PDF/A兼容性的PDF文档。
  4. 设置运行时选项。
  5. 检索有关PDF文档的信息。

包括项目文件

在开发项目中包含必要的文件。 如果您使用Java创建客户端应用程序,请包含必要的JAR文件。 如果您使用Web服务,请确保包含代理文件。

必须将以下JAR文件添加到项目的类路径中:

  • adobe-livecycle-client.jar
  • adobe-usermanager-client.jar
  • adobe-docconverter-client.jar
  • adobe-utilities.jar(如果AEM Forms部署在JBoss Application Server上,则为必需)
  • jbossall-client.jar(如果AEM Forms部署在JBoss Application Server上,则为必需)

有关这些JAR文件的位置的信息,请参阅包括AEM FormsJava库文件

创建DocConvert客户端

在以编程方式执行DocConverter操作之前,必须创建DocConverter客户端。 如果您使用Java API,请创建DocConverterServiceClient对象。 如果您使用DocConverter Web服务API,请创建DocConverterServiceService对象。

参考用于确定PDF/A兼容性的PDF文档

必须引用PDF文档并将其传递到DocConverter服务,以确定PDF文档是否符合PDF/A规范。

设置运行时选项

您可以设置一个运行时选项,它确定在转换过程中跟踪的信息量。 即,您可以设置九个不同级别,指定DocConverter服务在将PDF文档转换为PDF/A文档时跟踪的信息量。

检索有关PDF文档的信息

在创建DocConverter服务客户端、引用PDF文档并设置运行时选项后,您可以确定PDF文档是否符合PDF/A规范的文档。

另请参阅

使用Java API确定PDF/A规范

使用Web服务API确定PDF/A规范

包括AEM FormsJava库文件

设置连接属性

使用Java API确定PDF/A兼容性

使用Java API确定PDF/A规范:

  1. 包括项目文件

    在Java项目的类路径中包含客户端JAR文件,如adobe-docconverter-client.jar。

  2. 创建DocConvert客户端

    • 创建包含连接属性的ServiceClientFactory对象。
    • 使用DocConverterServiceClient对象的构造函数并传递ServiceClientFactory对象,创建<a0/>对象。
  3. 参考用于确定PDF/A兼容性的PDF文档

    • 创建一个java.io.FileInputStream对象,该对象使用其构造函数并传递一个指定PDF文件位置的字符串值来表示要转换的PDF文档。
    • 使用com.adobe.idp.Document对象的构造函数并传递java.io.FileInputStream对象,创建<a0/>对象。
  4. 设置运行时选项

    • 使用PDFAValidationOptionSpec对象的构造函数创建<a0/>对象。
    • 通过调用PDFAValidationOptionSpec对象的setCompliance方法并传递PDFAValidationOptionSpec.Compliance.PDFA_1B来设置规范级别。
    • 通过调用PDFAValidationOptionSpec对象的setLogLevel方法并传递指定跟踪级别的字符串值来设置信息跟踪级别。 例如,传递值FINE。 有关不同值的信息,请参见AEM FormsAPI参考中的setLogLevel方法。
  5. 检索有关PDF文档的信息

    通过调用DocConverterServiceClient对象的isPDFA方法并传递以下值,确定PDF/A兼容性:

    • 包含PDF文档的com.adobe.idp.Document对象。
    • 指定运行时选项的PDFAValidationOptionSpec对象。

    isPDFA方法返回一个PDFAValidationResult对象,该对象包含此操作的结果。

另请参阅

使用PDF/A文档

快速开始(SOAP模式):使用Java API确定PDF/A规范

包括AEM FormsJava库文件

设置连接属性

使用Web服务API确定PDF/A兼容性

使用Web服务API确定PDF/A规范:

  1. 包括项目文件

    • 创建一个使用DocConverter WSDL的Microsoft .NET客户端程序集。
    • 引用Microsoft .NET客户端程序集。
  2. 创建DocConvert客户端

    • 使用Microsoft .NET客户端程序集,通过调用其默认构造函数创建一个DocConverterServiceService对象。
    • DocConverterServiceService对象的Credentials数据成员设置为一个System.Net.NetworkCredential值,该值指定用户名和口令值。
  3. 参考用于确定PDF/A兼容性的PDF文档

    • 使用BLOB对象的构造函数创建<a0/>对象。 BLOB对象用于存储转换为PDF/A文档的PDF文档。
    • 通过调用System.IO.FileStream对象的构造函数并传递一个字符串值,该字符串值表示PDF文档的文件位置以及在中打开文件的模式。
    • 创建存储System.IO.FileStream对象内容的字节数组。 通过获取System.IO.FileStream对象的Length属性,可以确定字节数组的大小。
    • 通过调用System.IO.FileStream对象的Read方法并传递要读取的字节数组、开始位置和流长度,用流数据填充字节数组。
    • 通过为binaryData对象的<a1/>属性指定字节数组的内容,填充BLOB对象。
  4. 设置运行时选项

    • 使用PDFAValidationOptionSpec对象的构造函数创建<a0/>对象。
    • 通过将PDFAValidationOptionSpec对象的compliance数据成员赋值PDFAConversionOptionSpec_Compliance.PDFA_1B来设置规范级别。
    • 通过将PDFAValidationOptionSpec对象的resultLevel数据成员赋值PDFAValidationOptionSpec_ResultLevel.DETAILED来设置信息跟踪级别。
  5. 检索有关PDF文档的信息

    通过调用DocConverterServiceService对象的isPDFA方法并传递以下值,确定PDF/A兼容性:

    • 包含PDF文档的BLOB对象。
    • 包含运行时选项的PDFAValidationOptionSpec对象。

    isPDFA方法返回一个PDFAValidationResult对象,该对象包含此操作的结果。

另请参阅

使用PDF/A文档

使用Base64编码调用AEM Forms

创建使用Base64编码的。NET客户端程序集

在此页面上