將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服務,請務必包含Proxy檔案。

建立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服務API(Java)將PostScript檔案轉換為PDF檔案:

  1. 包含專案檔案。

    在Java項目的類路徑中包含客戶端JAR檔案,如adobe-distiller-client.jar。

  2. 建立Distiller服務用戶端。

    • 建立包含連接屬性的ServiceClientFactory對象。
    • 使用其建構子並傳遞ServiceClientFactory物件,以建立DistillerServiceClient物件。
  3. 擷取要轉換的檔案。

    • 建立java.io.FileInputStream對象,該對象使用其建構子並傳遞一個指定檔案位置的字串值來表示要轉換的檔案。
    • 使用其建構子並傳遞java.io.FileInputStream物件,以建立com.adobe.idp.Document物件。
  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服務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方法並傳遞要讀取的位元組陣列、啟動位置和流長度,以流資料填充位元組陣列。
    • 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

本頁內容