将Postscript转换为PDF文档

关于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身份验证:

      • 为字段DistillerServiceClient.ClientCredentials.UserName.UserName指定AEM表单用户名。
      • 为字段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方法并传递要读取的字节数组、开始位置和流长度,用流数据填充字节数组。
    • 通过将MTOM属性赋予字节数组的内容,填充BLOB对象。
  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.FileStream对象,创建System.IO.BinaryWriter对象。
    • 通过调用System.IO.BinaryWriter对象的Write方法并传递字节数组,将字节数组的内容写入PDF文件。

另请参阅

步骤摘要

使用MTOM调用AEM Forms

使用SwaRef调用AEM Forms

On this page

Adobe Summit Banner

A virtual event April 27-28.

Expand your skills and get inspired.

Register for free
Adobe Summit Banner

A virtual event April 27-28.

Expand your skills and get inspired.

Register for free
Adobe Maker Awards Banner

Time to shine!

Apply now for the 2021 Adobe Experience Maker Awards.

Apply now
Adobe Maker Awards Banner

Time to shine!

Apply now for the 2021 Adobe Experience Maker Awards.

Apply now