将Postscript转换为PDF文档

本文档中的示例和示例仅适用于JEE环境中的AEM Forms。

关于Distiller服务

Distiller®服务可将PostScript®、封装的PostScript(EPS)和PRN文件转换为通过网络压缩、可靠和更安全的PDF文件。 Distiller服务经常用于将大量打印文件转换为电子文件,如发票和报表。 将文档转换为PDF还允许企业向其客户发送文档的纸面版本和电子版本。

注意

有关Distiller服务的更多信息,请参阅AEM Forms的服务参考

将PostScript转换为PDF文档

本主题介绍如何使用Distiller服务API(Java和Web服务)以编程方式将PostScript(PS)、封装的PostScript(EPS)和PRN文件转换为PDF文档。

注意

有关Distiller服务的更多信息,请参阅AEM Forms的服务参考

注意

要将PostScript文件转换为PDF文档,需要在托管AEM Forms的服务器上安装以下任一内容:Acrobat 9或Microsoft Visual C++ 2005可再发行包。

步骤的摘要

要将任何受支持的类型转换为PDF文档,请执行以下步骤:

  1. 包括项目文件。
  2. 创建Distiller服务客户端。
  3. 检索要转换的文件。
  4. 调用PDF创建操作。
  5. 保存PDF文档。

包含项目文件

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

创建Distiller服务客户端

您必须先创建Distiller服务客户端,然后才能以编程方式执行Distiller服务操作。 如果您使用的是Java API,请创建一个DistillerServiceClient对象。 如果您使用的是Web服务API,请创建一个DistillerServiceService对象。

检索要转换的文件

必须检索要转换的文件。 例如,要将PS文件转换为PDF文档,必须检索PS文件。

调用PDF创建操作

创建服务客户端后,可以调用PDF创建操作。 此操作需要有关要转换的文档的信息,包括目标文档的路径。

保存PDF文档

您可以将PDF文档另存为PDF文件。

另请参阅

使用Java API将PostScript文件转换为PDF

使用Web服务API将PostScript文件转换为PDF

包括AEM Forms Java库文件

设置连接属性

输出服务API快速入门

使用Java API将PostScript文件转换为PDF

使用Distiller Service API(Java)将PostScript文件转换为PDF文档:

  1. 包括项目文件。

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

  2. 创建Distiller服务客户端。

    • 创建包含连接属性的ServiceClientFactory对象。
    • 使用其构造函数创建DistillerServiceClient对象,并传递ServiceClientFactory对象。
  3. 检索要转换的文件。

    • 创建一个java.io.FileInputStream对象,该对象使用其构造函数并传递指定文件位置的字符串值来表示要转换的文件。
    • 使用其构造函数创建com.adobe.idp.Document对象,并传递java.io.FileInputStream对象。
  4. 调用PDF创建操作。

    调用DistillerServiceClient对象的createPDF方法并传递以下值:

    • 表示要转换的PS、EPS或PRN文件的com.adobe.idp.Document对象
    • java.lang.String对象,其中包含要转换的文件的名称
    • java.lang.String对象,其中包含要使用的Adobe PDF设置的名称
    • java.lang.String对象,其中包含要使用的安全设置的名称
    • 可选com.adobe.idp.Document对象,其中包含在生成PDF文档时要应用的设置
    • 可选com.adobe.idp.Document对象,其中包含要应用于PDF文档的元数据信息

    createPDF方法返回一个CreatePDFResult对象,该对象包含新的PDF文档和可能生成的日志文件。 日志文件通常包含由转换请求生成的错误或警告消息。

  5. 保存PDF文档。

    要获取新创建的PDF文档,请执行以下操作:

    • 调用CreatePDFResult对象的getCreatedDocument方法。 这会返回com.adobe.idp.Document对象。
    • 调用com.adobe.idp.Document对象的copyToFile方法以提取PDF文档。

    同样,要获取日志文档,请执行以下操作。

    • 调用CreatePDFResult对象的getLogDocument方法。 这会返回com.adobe.idp.Document对象。
    • 调用com.adobe.idp.Document对象的copyToFile方法以提取日志文档。

另请参阅

步骤摘要

快速入门(SOAP模式):使用Java API将PostScript文件转换为PDF文档

包括AEM Forms Java库文件

设置连接属性

使用Web服务API将PostScript文件转换为PDF

使用Distiller Service API(Web服务)将PostScript文件转换为PDF文档:

  1. 包括项目文件。

    创建使用MTOM的Microsoft .NET项目。 确保使用以下WSDL定义:http://localhost:8080/soap/services/DistillerService?WSDL&lc_version=9.0.1

    注意

    localhost替换为托管AEM Forms的服务器的IP地址。

  2. 创建Distiller服务客户端。

    • 使用其默认构造函数创建DistillerServiceClient对象。

    • 使用System.ServiceModel.EndpointAddress构造函数创建DistillerServiceClient.Endpoint.Address对象。 将指定WSDL的字符串值传递给AEM Forms服务(例如http://localhost:8080/soap/services/DistillerService?blob=mtom。) 您无需使用lc_version属性。 在创建服务引用时,会使用此属性。 但是,请指定?blob=mtom以使用MTOM。

    • 通过获取DistillerServiceClient.Endpoint.Binding字段的值,创建System.ServiceModel.BasicHttpBinding对象。 将返回值转换为BasicHttpBinding

    • System.ServiceModel.BasicHttpBinding对象的MessageEncoding字段设置为WSMessageEncoding.Mtom。 此值可确保使用MTOM。

    • 通过执行以下任务,启用基本HTTP身份验证:

      • 将AEM表单用户名分配给字段DistillerServiceClient.ClientCredentials.UserName.UserName
      • 为字段DistillerServiceClient.ClientCredentials.UserName.Password分配相应的密码值。
      • 将常量值HttpClientCredentialType.Basic分配给字段BasicHttpBindingSecurity.Transport.ClientCredentialType
      • 将常量值BasicHttpSecurityMode.TransportCredentialOnly分配给字段BasicHttpBindingSecurity.Security.Mode
  3. 检索要转换的文件。

    • 使用BLOB对象的构造函数创建对象。 此BLOB对象用于存储要转换为PDF文档的文件。
    • 通过调用System.IO.FileStream对象的构造函数并传递一个字符串值,该字符串值表示文件位置和在中打开文件的模式。
    • 创建用于存储System.IO.FileStream对象内容的字节数组。 您可以通过获取System.IO.FileStream对象的Length属性来确定字节数组的大小。
    • 通过调用System.IO.FileStream对象的Read方法并传递要读取的字节数组、开始位置和流长度,用流数据填充字节数组。
    • 通过为BLOB对象的MTOM属性分配字节数组的内容来填充该对象。
  4. 调用PDF创建操作。

    调用DistillerServiceService对象的CreatePDF2方法并传递以下必需值:

    • 表示要转换的PS文件的BLOB对象
    • 包含要转换的文件的路径名的字符串
    • 一个字符串对象,其中包含要使用的Adobe PDF设置(例如,Standard
    • 一个字符串对象,其中包含要使用的安全设置(例如,No Security)
    • 可选BLOB对象,其中包含在生成PDF文档时要应用的设置
    • 可选BLOB对象,其中包含要应用于PDF文档的元数据信息
    • 用于存储PDF文档的BLOB输出参数
    • 用于存储日志的BLOB输出参数
  5. 保存PDF文档。

    • 通过调用System.IO.FileStream对象的构造函数创建对象。 传递一个字符串值,该值表示已签名PDF文档的文件位置以及打开文件的模式。
    • 创建一个字节数组,用于存储CreatePDF2方法(输出参数)返回的BLOB对象的内容。 通过获取BLOB对象MTOM数据成员的值来填充字节数组。
    • 通过调用System.IO.BinaryWriter对象的构造函数并传递System.IO.FileStream对象来创建该对象。
    • 通过调用System.IO.BinaryWriter对象的Write方法并传递字节数组,将字节数组的内容写入PDF文件。

另请参阅

步骤摘要

使用MTOM调用AEM Forms

使用SwaRef调用AEM Forms

在此页面上