PostscriptからPDFドキュメントへの変換

このドキュメントのサンプルと例は、JEE環境上のAEM Formsに対してのみ提供されています。

Distillerサービスについて

Distiller®サービスは、PostScript®、Encapsulated PostScript(EPS)およびPRNファイルを、ネットワーク経由でコンパクトで信頼性の高い、より安全なPDFファイルに変換します。 Distiller サービスは、請求書や明細書など、容量の大きい印刷ドキュメントを電子ドキュメントに変換する際によく使用されます。ドキュメントを PDF に変換して、顧客にドキュメントの印刷バージョンと電子バージョンを送付できます。

メモ

Distillerサービスの詳細については、『AEM Formsのサービスリファレンス』を参照してください。

PostScriptからPDFドキュメントへの変換

このトピックでは、DistillerサービスAPI(JavaおよびWebサービス)を使用して、PostScript(PS)、Encapsulated 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 ライブラリファイルを含める

接続プロパティの設定

OutputサービスAPIのクイック開始

Java APIを使用したPostScriptファイルのPDFへの変換

DistillerサービスAPI(Java)を使用してPostScriptファイルをPDFドキュメントに変換します。

  1. プロジェクトファイルを含めます。

    Javaプロジェクトのクラスパスに、adobe-distiller-client.jarなどのクライアント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オブジェクト
    • 使用するAdobe PDF設定の名前を含むjava.lang.Stringオブジェクト
    • 使用するセキュリティ設定の名前が含まれるjava.lang.Stringオブジェクト
    • PDFドキュメントの生成中に適用される設定を含む、オプションのcom.adobe.idp.Documentオブジェクトです
    • PDFドキュメントに適用するメタデータ情報を含む、オプションのcom.adobe.idp.Documentオブジェクトです

    createPDFメソッドは、新しいPDFドキュメントと、生成される可能性のあるログファイルを含むCreatePDFResultオブジェクトを返します。 通常、ログファイルには、変換要求によって生成されるエラーメッセージや警告メッセージが含まれます。

  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サービスに指定するstring値を渡します(例:http://localhost:8080/soap/services/DistillerService?blob=mtom)。 lc_version属性を使用する必要はありません。 この属性は、サービス参照を作成する際に使用されます。 ただし、MTOMを使用するには?blob=mtomを指定します。

    • DistillerServiceClient.Endpoint.Bindingフィールドの値を取得してSystem.ServiceModel.BasicHttpBindingオブジェクトを作成します。 戻り値を BasicHttpBinding にキャストします。

    • System.ServiceModel.BasicHttpBindingオブジェクトのMessageEncodingフィールドをWSMessageEncoding.Mtomに設定します。 この値により、MTOMが使用されます。

    • 次のタスクを実行して、基本的なHTTP認証を有効にします。

      • AEM formsユーザー名をフィールド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設定を含むstringオブジェクト(例:Standard
    • 使用するセキュリティ設定を含む文字列オブジェクト(例:No Security)
    • PDFドキュメントの生成中に適用される設定を含む、オプションのBLOBオブジェクトです
    • PDFドキュメントに適用するメタデータ情報を含む、オプションのBLOBオブジェクトです
    • PDFドキュメントの保存に使用されるBLOB出力パラメーター
    • ログの保存に使用するBLOB出力パラメーター
  5. PDFドキュメントを保存します。

    • コンストラクターを呼び出して、System.IO.FileStreamオブジェクトを作成します。 署名済みPDFドキュメントーのファイルの場所とファイルを開くモードを表すstring値を渡します。
    • CreatePDF2メソッド(出力パラメーター)から返されたBLOBオブジェクトの内容を格納するバイト配列を作成します。 BLOBオブジェクトのMTOMデータメンバの値を取得して、バイト配列を入力します。
    • コンストラクターを呼び出してSystem.IO.FileStreamオブジェクトを渡し、System.IO.BinaryWriterオブジェクトを作成します。
    • System.IO.BinaryWriterオブジェクトのWriteメソッドを呼び出し、バイト配列を渡すことで、バイト配列の内容をPDFファイルに書き込みます。

関連トピック

手順の概要

MTOMを使用したAEM Formsの呼び出し

SwaRefを使用したAEM Formsの呼び出し

このページ