Java API を使用して PDF ドキュメントを PS に変換

Convert PDF サービス API(Java)を使用して、PDF ドキュメントを PostScript に変換します。

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

    adobe-convertpdf-client.jar などのクライアント JAR ファイルを Java プロジェクトのクラスパスに含めます。

  2. Convert PDF クライアントを作成します。

    • 接続プロパティを含む ServiceClientFactory オブジェクトを作成します。
    • コンストラクタを使用して ConvertPdfServiceClient オブジェクトを渡すことによって、ServiceClientFactory オブジェクトを作成します。
  3. PostScript ファイルに変換する PDF ドキュメントを参照します。

    • コンストラクターを使用して java.io.FileInputStream オブジェクトを作成し、変換する PDF ドキュメントの場所を指定する文字列値を渡します。
    • com.adobe.idp.Document コンストラクターを使用して、PDF ドキュメントを格納する com.adobe.idp.Document を作成します。PDF ドキュメントを含んだ java.io.FileInputStream オブジェクトを渡します。
  4. 変換の実行時オプションを設定します。

    • コンストラクターを呼び出して ToPSOptionsSpec オブジェクトを作成します。
    • ToPSOptionsSpec オブジェクトに属する適切なメソッドを呼び出して、実行時オプションを設定します。例えば、作成される PostScript レベルを定義するには、ToPSOptionsSpec オブジェクトの setPsLevel メソッドを呼び出して、PostScript レベルを指定する PSLevel 列挙値を渡します。設定できるすべての実行時の値について詳しくは、 AEM Forms API リファレンスToPSOptionsSpec クラスリファレンスを参照してください。
  5. PDF ドキュメントを PostScript ファイルに変換します。

    ConvertPdfServiceClient オブジェクトの toPS2 メソッドを呼び出して、次の値を渡します。

    • PostScript ファイルに変換する PDF ドキュメントを表す com.adobe.idp.Document オブジェクト
    • PostScript の実行時オプションを指定する ToPSOptionsSpec オブジェクト

    この toPS2 メソッドは、新しい PostScript ドキュメントを含んだ Document オブジェクトを返します。

  6. PostScript ファイルを保存します。

    • java.io.File オブジェクトを作成し、ファイル拡張子が .ps であることを確認します。
    • Document オブジェクトの copyToFile メソッドを呼び出して、Document オブジェクトの内容をファイルにコピーします(必ず、toPS2 メソッドによって返された Document オブジェクトを使用します)。

Web サービス API を使用して PDF ドキュメントを PS に変換

Convert PDF サービス API(web サービス)を使用して、PDF キュメントを PostScript に変換します。

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

    MTOM を使用する Microsoft .NET プロジェクトを作成します。WSDL 定義 http://localhost:8080/soap/services/ConvertPDFService?WSDL&lc_version=9.0.1 を使用するようにします。

    NOTE
    localhost を、AEM Forms をホストするサーバーの IP アドレスに置き換えます。
  2. Convert PDF クライアントを作成します。

    • デフォルトのコンストラクターを使用して ConvertPdfServiceClient オブジェクトを作成します。

    • System.ServiceModel.EndpointAddress コンストラクターを使用して ConvertPdfServiceClient.Endpoint.Address オブジェクトを作成します。WSDL を指定する文字列値を AEM Forms サービスに渡します(例えば、http://localhost:8080/soap/services/ConvertPDFService?blob=mtom) 。lc_version 属性を使用する必要はありません。ただし、?blob=mtom を指定します。

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

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

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

      • ConvertPdfServiceClient.ClientCredentials.UserName.UserName フィールドに AEM Forms ユーザー名を割り当てます。
      • 対応するパスワード値を ConvertPdfServiceClient.ClientCredentials.UserName.Password フィールドに割り当てます。
      • 定数値 HttpClientCredentialType.BasicBasicHttpBindingSecurity.Transport.ClientCredentialType フィールドに割り当てます。
      • 定数値 BasicHttpSecurityMode.TransportCredentialOnly をフィールド BasicHttpBindingSecurity.Security.Mode に割り当てます。
  3. PostScript ファイルに変換する PDF ドキュメントを参照します。

    • コンストラクタを使用して BLOB オブジェクトを作成します。この BLOB オブジェクトは、PostScript ファイルに変換された PDF ドキュメントを格納するために使用されます。
    • System.IO.FileStream オブジェクトを作成します。それには、コンストラクターを呼び出し、変換する PDF ドキュメントのファイルの場所と、ファイルを開くモードを表す文字列値を渡します。
    • System.IO.FileStream オブジェクトの内容を格納するバイト配列を作成します。バイト配列のサイズは、System.IO.FileStream オブジェクトの Length プロパティを取得することで決定できます。
    • System.IO.FileStream オブジェクトの Read メソッドを呼び出し、読み取るバイト配列、開始位置、ストリーム長を渡すことにより、バイト配列にストリームデータを入力します。
    • MTOM フィールドにバイト配列の内容を割り当てることにより、BLOB オブジェクトに入力します。
  4. 変換の実行時オプションを設定します。

    • コンストラクターを呼び出して ToPSOptionsSpec オブジェクトを作成します。
    • ToPSOptionsSpec オブジェクトのデータメンバーに値を割り当てて、実行時オプションを設定します。例えば、作成する PostScript レベルを定義するには、ToPSOptionsSpec オブジェクトの psLevel データメンバーに PSLevel 列挙値を割り当てます。
  5. PDF ドキュメントを PostScript ファイルに変換します。

    GeneratePDFServiceService オブジェクトの toPS2 メソッドを呼び出して、次の値を渡します。

    • PostScript ファイルに変換する PDF ドキュメントを表す BLOB オブジェクト
    • 実行時のオプションを指定する ToPSOptionsSpec オブジェクト

    変換が完了したら、BLOB オブジェクトの MTOM プロパティにアクセスして、PostScript ドキュメントを表すバイナリデータを抽出します。PostScript ファイルに書き出すことができるバイト配列を返します。

  6. PostScript ファイルを保存します。

    • コンストラクターを呼び出して、System.IO.FileStream オブジェクトを作成します。PS ファイルの場所を表す文字列値を渡します。
    • encryptPDFUsingPassword メソッドから返された BLOB オブジェクトのデータ内容を格納するバイト配列を作成します。BLOB オブジェクトの MTOM フィールドの値を取得して、バイト配列にデータを入力します。
    • コンストラクターを呼び出して System.IO.FileStream オブジェクトを渡すことによって、System.IO.BinaryWriter オブジェクトを作成します。
    • System.IO.BinaryWriter オブジェクトの Write メソッドを呼び出し、バイト配列を渡して、バイト配列の内容を PostScript ファイルに書き込みます。

PDFドキュメントの画像形式への変換

Convert PDF サービスを使用すると、PDF ドキュメントを JPEG、JPEG 2000、TIFF、PNG などの画像形式にプログラムで変換できます。PDF ドキュメントを画像ファイルに変換することにより、PDF ドキュメントを画像ファイルとして使用できます。例えば、画像をストレージ用のエンタープライズコンテンツ管理システムに配置できます。

Convert PDF サービスは、PDF ドキュメントを画像に変換する際に、ドキュメント内のページごとに個別の画像を作成します。例えば、ドキュメントのページ数が 20 の場合、 Convert PDF サービスは 20 個の画像ファイルを作成します。PDF ドキュメントを PDF 形式に変換する場合、PDF ドキュメント内のページごとに個々の画像を作成するか、画像ドキュメント全体の単一の画像ファイルを作成できます。

NOTE
Convert PDF サービスについて詳しくは、AEM Forms サービスリファレンスを参照してください。

手順の概要

PDF ドキュメントをサポートされている任意のタイプに変換するには、次の手順を実行します。

  1. プロジェクトファイルを含めます。
  2. Convert PDF サービスクライアントを作成します。
  3. 変換する PDF ドキュメントを取得します。
  4. 実行時オプションを設定します。
  5. PDF を画像に変換します。
  6. コレクションから画像ファイルを取得します。

プロジェクトファイルを含める

開発プロジェクトに必要なファイルを含めます。Java を使用してクライアントアプリケーションを作成する場合は、必要な JAR ファイルを含めます。Web サービスを使用している場合は、必ずプロキシファイルを含めてください。

Convert PDF クライアントを作成

プログラムによって Convert PDF サービスの操作を実行する前に、Convert PDF サービスクライアントを作成する必要があります。Java API を使用している場合は、ConvertPdfServiceClient オブジェクトを作成します。Web サービス API を使用している場合は、ConvertPDFServiceService オブジェクトを作成します。

変換する PDF ドキュメントを取得

画像に変換する PDF ドキュメントを取得します。インタラクティブ PDF ドキュメントを画像に変換することはできません。その操作を実行しようとすると、例外が発生します。インタラクティブ PDF ドキュメントを画像ファイルに変換するには、変換前に PDF ドキュメントを統合する必要があります(PDF ドキュメントの統合を参照してください)。

実行時オプションを設定

画像形式や解像度の値など、実行時オプションを設定します。実行時の値について詳しくは、AEM Forms API リファレンスToImageOptionsSpec のクラス参照を参照してください。

PDF を画像に変換

サービスクライアントを作成し、実行時オプションを設定すると、PDF ドキュメントを画像に変換できます。画像を含むコレクションオブジェクトが返されます。

コレクションからの画像ファイルの取得

Convert PDF サービスが返すコレクションオブジェクトから画像ファイルを取得できます。コレクションの各要素は com.adobe.idp.Document インスタンス(web サービスを使用している場合は BLOB インスタンス)であり、JPG ファイルなどの画像ファイルとして保存できます。

画像ファイルの形式は、ImageConvertFormat 実行時オプション によって異なります。例えば、ImageConvertFormat 実行時オプションを ImageConvertFormat.JPEG に設定すると、画像ファイルを JPG ファイルとして保存できます。

関連トピック

AEM Forms Java ライブラリファイルの追加

接続プロパティの設定

Convert PDF サービス API クイックスタート

Java API を使用して PDF ドキュメントを画像ファイルに変換

Convert PDF サービス API(Java)を使用して、PDFドキュメントを画像形式に変換します。

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

    adobe-convertpdf-client.jar などのクライアント JAR ファイルを Java プロジェクトのクラスパスに含めます。

  2. Convert PDF クライアントを作成します。

    • 接続プロパティを含む ServiceClientFactory オブジェクトを作成します。
    • コンストラクタを使用して ConvertPdfServiceClient オブジェクトを渡すことによって、ServiceClientFactory オブジェクトを作成します。
  3. 変換する PDF ドキュメントを取得します。

    • コンストラクターを使用して、PDF ドキュメントの場所を指定する文字列値を渡すことにより、変換する PDF ドキュメントを表す java.io.FileInputStream オブジェクトを作成します。
    • コンストラクタを使用して com.adobe.idp.Document オブジェクトを渡すことによって、java.io.FileInputStream オブジェクトを作成します。
  4. 実行時オプションを設定します。

    • コンストラクタを使用して ToImageOptionsSpec オブジェクトを作成します。
    • 必要に応じて、このオブジェクトに属するメソッドを呼び出します。例えば、setImageConvertFormat メソッドを呼び出して、形式のタイプを 指定する ImageConvertFormat 列挙値を渡すことにより、画像のタイプを設定します。
    NOTE
    ImageConvertFormat 列挙値の設定は必須です。
  5. PDF を画像に変換します。

    ConvertPdfServiceClient オブジェクトの toImage2 メソッドを呼び出して、次の値を渡します。

    • 変換する PDF ドキュメントを表す com.adobe.idp.Document オブジェクト。
    • ターゲット画像の形式に関する各種の環境設定が含まれる com.adobe.livecycle.converpdfservice.client.ToImageOptionsSpec オブジェクト。

    toImage2 メソッドは、画像が含まれる java.util.List オブジェクトを返します。コレクションに含まれる各要素は、com.adobe.idp.Document のインスタンスです。

  6. コレクションから画像ファイルを取得します。

    java.util.List オブジェクトを繰り返して、画像が存在するかを判断します。各要素は、com.adobe.idp.Document のインスタンスです。com.adobe.idp.Document オブジェクトの copyToFile メソッドを呼び出し、java.io.File オブジェクトを渡して、画像を保存します。

Web サービス API を使用して PDF ドキュメントを画像ファイルに変換

Convert PDF サービス API(web サービス)を使用して、PDF ドキュメントを画像の形式に変換します。

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

    MTOM を使用する Microsoft .NET プロジェクトを作成します。WSDL 定義 http://localhost:8080/soap/services/ConvertPDFService?WSDL&lc_version=9.0.1 を使用するようにします。

    NOTE
    localhost を、AEM Forms をホストしているサーバーの IP アドレスに置き換えます。
  2. Convert PDF クライアントを作成します。

    • デフォルトのコンストラクターを使用して ConvertPdfServiceClient オブジェクトを作成します。

    • System.ServiceModel.EndpointAddress コンストラクターを使用して ConvertPdfServiceClient.Endpoint.Address オブジェクトを作成します。WSDL を指定する文字列値を AEM Forms サービスに渡します(例えば、http://localhost:8080/soap/services/ConvertPDFService?blob=mtom) 。lc_version 属性を使用する必要はありません。ただし、?blob=mtom を指定します。

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

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

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

      • ConvertPdfServiceClient.ClientCredentials.UserName.UserName フィールドに AEM Forms ユーザー名を割り当てます。
      • 対応するパスワード値を ConvertPdfServiceClient.ClientCredentials.UserName.Password フィールドに割り当てます。
      • 定数値 HttpClientCredentialType.BasicBasicHttpBindingSecurity.Transport.ClientCredentialType フィールドに割り当てます。
      • 定数値 BasicHttpSecurityMode.TransportCredentialOnly をフィールド BasicHttpBindingSecurity.Security.Mode に割り当てます。
  3. 変換する PDF ドキュメントを取得します。

    • コンストラクタを使用して BLOB オブジェクトを作成します。この BLOB オブジェクトは、PDF フォームを格納するために使用します。
    • コンストラクターを呼び出して System.IO.FileStream オブジェクトを作成します。PDF フォームの場所と、ファイルを開くときのモードを指定する文字列値を渡します。
    • System.IO.FileStream オブジェクトの内容を格納するバイト配列を作成します。バイト配列のサイズは、System.IO.FileStream オブジェクトの Length プロパティを取得することで決定します。
    • System.IO.FileStream オブジェクトの Read メソッドを呼び出して、バイト配列にストリームデータを入力します。読み取り対象のバイト配列、開始位置、ストリーム長を渡します。
    • MTOM フィールドを割り当てることにより、BLOB オブジェクトにバイト配列の内容を入力します。
  4. 実行時オプションを設定します。

    • コンストラクタを使用して ToImageOptionsSpec オブジェクトを作成します。
    • 必要に応じて、このオブジェクトに属するメソッドを呼び出します。例えば、画像のタイプを設定するには、setImageConvertFormat メソッドを呼び出し、フォーマットタイプを指定する ImageConvertFormat 列挙値を渡します。
    NOTE
    ImageConvertFormat 列挙値の設定は必須です。
  5. PDF を画像に変換します。

    ConvertPDFServiceService オブジェクトの toImage2 メソッドを呼び出して、次の値を渡します。

    • 変換するファイルを表す BLOB オブジェクト
    • ターゲット画像形式に関する様々な環境設定を含む ToImageOptionsSpec オブジェクト

    toImage2 メソッドは、新しく作成された画像ファイルを含む MyArrayOfBLOB オブジェクトを返します。

  6. コレクションから画像ファイルを取得します。

    • MyArrayOfBLOB オブジェクトの Count フィールドの値を取得し、その中の要素数を決定します。各要素は 画像を含む BLOB オブジェクトです。
    • MyArrayOfBLOB オブジェクトを繰り返し処理し、各画像ファイルを保存します。
前のページDDX ドキュメントの検証
次のページPostscript から PDF ドキュメントへの変換

Experience Manager