PDF の Postscript および画像ファイルへの変換 converting-pdf-to-postscript-andimage-files
このドキュメントのサンプルと例は、JEE 環境の AEM Forms のみを対象としています。
Convert PDF サービスについて
Convert PDF サービスは、PDF ドキュメントを PostScript およびいくつかの画像形式(JPEG、JPEG 2000、PNG および TIFF)に変換します。PDFドキュメントを PostScript に変換すると、PostScript プリンターでサーバーベースの無人印刷を行う場合に便利です。PDF ドキュメントをサポートしていないコンテンツ管理システムでドキュメントをアーカイブする場合、PDF ドキュメントをマルチページ TIFF ファイルに変換する方法が実用的です。
Convert PDF サービスを使用して、以下のタスクを実行できます。
- PDF ドキュメントを PostScript に変換します。
- PDFドキュメントを画像形式に変換します。
PDF ドキュメントの PostScript への変換 converting-pdf-documents-to-postscript
ここでは、Convert PDF サービス API(Java および web サービス)を使用して、PDF ドキュメントを PostScript ファイルにプログラムで変換する方法について説明します。PostScript ファイルに変換する PDF ドキュメントは、非インタラクティブ PDF ドキュメントである必要があります。つまり、インタラクティブ PDF ドキュメントを PostScript ファイルに変換しようとすると、例外がスローされます。
手順の概要 summary-of-steps
PDF ドキュメントを PostScript ファイルに変換するには、次の手順を実行します。
- プロジェクトファイルを含めます。
- Convert PDF サービスクライアントを作成します。
- PostScript ファイルに変換する PDF ドキュメントを参照します。
- 変換の実行時オプションを設定します。
- PDF ドキュメントを PostScript ファイルに変換します。
- PostScript ファイルを保存します。
プロジェクトファイルを含める
開発プロジェクトに必要なファイルを含めます。Java を使用してクライアントアプリケーションを作成する場合は、必要な JAR ファイルを含めます。Web サービスを使用している場合は、必ずプロキシファイルを含めてください。
Convert PDF クライアントを作成
プログラムによって Convert PDF サービスの操作を実行する前に、Convert PDF サービスクライアントを作成する必要があります。Java API を使用している場合は、ConvertPdfServiceClient
オブジェクトを作成します。Web サービス API を使用している場合は、ConvertPDFServiceService
オブジェクトを作成します。
このセクションでは、AEM Forms で導入された web サービス機能を使用します。新しい機能にアクセスするには、lc_version
属性を使用してプロキシオブジェクトを構築する必要があります。(Web サービスを使用した AEM Forms の呼び出しの「Web サービスを使用した新しい機能へのアクセス」を参照してください。)
PostScript ファイルに変換する PDF ドキュメントを参照
PostScript ファイルに変換する PDF ドキュメントを参照します。このトピックで前述したように、PDF ドキュメントは非インタラクティブ PDF ドキュメントである必要があります。インタラクティブ PDF ドキュメントを PostScript ファイルに変換しようとすると、例外がスローされます。
コンバージョン実行時オプションを設定
PDF ドキュメントを PostScript ファイルに変換する際に、作成する PostScript タイプを指定する実行時オプションを定義できます。例えば、レベル 3 の PostScript ファイルを定義できます。
通常、生成される PostScript ファイルは、入力 PDF ドキュメントのサイズを反映します。ShrinkToFit
オプション(ページに合わせて PostScript ファイルの出力を縮小する)を選択した場合、入力 PDF ドキュメントと生成された PostScript ファイルの間に違いはありません。ShrinkToFit
オプションは、入力 PDF ドキュメントよりも小さいページサイズで出力することを選択した場合にのみ有効になります。小さいページサイズを選択するには、PageSize
オプションを定義します。また、RotateAndCenter
オプションを true
に設定して、正しい PostScript 出力を取得することをお勧めします。
同様に、ExpandToFit
オプション(ページに合わせて PostScript ファイルの出力を拡張する)を選択した場合、入力 PDF ドキュメントよりも大きいページサイズで出力するように選択した場合にのみ有効になります。大きいページサイズを選択するには、PageSize
オプションを定義します。また、RotateAndCenter
オプションを true
に設定して、正しい PostScript 出力を取得することをお勧めします。
ToPSOptionsSpec
クラスレファレンスを参照してください。PDF ドキュメントを PostScript ファイルに変換
サービスクライアントを作成し、実行時オプションを設定したら、PostScript 変換操作を呼び出すことができます。この操作では、変換するドキュメントに関する情報(ターゲットドキュメントに適した PostScript レベルを含む)が必要になります。
PostScript ファイルを保存
PDF ドキュメントを PostScript に変換したら、出力を PostScript ファイルとして保存できます。
関連トピック
Java API を使用して PDF ドキュメントを PS に変換
Java API を使用して PDF ドキュメントを PS に変換 convert-a-pdf-document-to-ps-using-the-java-api
Convert PDF サービス API(Java)を使用して、PDF ドキュメントを PostScript に変換します。
-
プロジェクトファイルを含めます。
adobe-convertpdf-client.jar などのクライアント JAR ファイルを Java プロジェクトのクラスパスに含めます。
-
Convert PDF クライアントを作成します。
- 接続プロパティを含む
ServiceClientFactory
オブジェクトを作成します。 - コンストラクタを使用して
ConvertPdfServiceClient
オブジェクトを渡すことによって、ServiceClientFactory
オブジェクトを作成します。
- 接続プロパティを含む
-
PostScript ファイルに変換する PDF ドキュメントを参照します。
- コンストラクターを使用して
java.io.FileInputStream
オブジェクトを作成し、変換する PDF ドキュメントの場所を指定する文字列値を渡します。 com.adobe.idp.Document
コンストラクターを使用して、PDF ドキュメントを格納するcom.adobe.idp.Document
を作成します。PDF ドキュメントを含んだjava.io.FileInputStream
オブジェクトを渡します。
- コンストラクターを使用して
-
変換の実行時オプションを設定します。
- コンストラクターを呼び出して
ToPSOptionsSpec
オブジェクトを作成します。 ToPSOptionsSpec
オブジェクトに属する適切なメソッドを呼び出して、実行時オプションを設定します。例えば、作成される PostScript レベルを定義するには、ToPSOptionsSpec
オブジェクトのsetPsLevel
メソッドを呼び出して、PostScript レベルを指定するPSLevel
列挙値を渡します。設定できるすべての実行時の値について詳しくは、 AEM Forms API リファレンスのToPSOptionsSpec
クラスリファレンスを参照してください。
- コンストラクターを呼び出して
-
PDF ドキュメントを PostScript ファイルに変換します。
ConvertPdfServiceClient
オブジェクトのtoPS2
メソッドを呼び出して、次の値を渡します。- PostScript ファイルに変換する PDF ドキュメントを表す
com.adobe.idp.Document
オブジェクト - PostScript の実行時オプションを指定する
ToPSOptionsSpec
オブジェクト
この
toPS2
メソッドは、新しい PostScript ドキュメントを含んだDocument
オブジェクトを返します。 - PostScript ファイルに変換する PDF ドキュメントを表す
-
PostScript ファイルを保存します。
java.io.File
オブジェクトを作成し、ファイル拡張子が .ps であることを確認します。Document
オブジェクトのcopyToFile
メソッドを呼び出して、Document
オブジェクトの内容をファイルにコピーします(必ず、toPS2
メソッドによって返されたDocument
オブジェクトを使用します)。
関連情報
クイックスタート(SOAP モード):Java API を使用した PDF ドキュメントの PostScript への変換
Web サービス API を使用して PDF ドキュメントを PS に変換 convert-a-pdf-document-to-ps-using-the-web-service-api
Convert PDF サービス API(web サービス)を使用して、PDF キュメントを PostScript に変換します。
-
プロジェクトファイルを含めます。
MTOM を使用する Microsoft .NET プロジェクトを作成します。WSDL 定義
http://localhost:8080/soap/services/ConvertPDFService?WSDL&lc_version=9.0.1
を使用するようにします。note note NOTE localhost
を、AEM Forms をホストするサーバーの IP アドレスに置き換えます。 -
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.Basic
をBasicHttpBindingSecurity.Transport.ClientCredentialType
フィールドに割り当てます。 - 定数値
BasicHttpSecurityMode.TransportCredentialOnly
をフィールドBasicHttpBindingSecurity.Security.Mode
に割り当てます。
-
-
PostScript ファイルに変換する PDF ドキュメントを参照します。
- コンストラクタを使用して
BLOB
オブジェクトを作成します。このBLOB
オブジェクトは、PostScript ファイルに変換された PDF ドキュメントを格納するために使用されます。 System.IO.FileStream
オブジェクトを作成します。それには、コンストラクターを呼び出し、変換する PDF ドキュメントのファイルの場所と、ファイルを開くモードを表す文字列値を渡します。System.IO.FileStream
オブジェクトの内容を格納するバイト配列を作成します。バイト配列のサイズは、System.IO.FileStream
オブジェクトのLength
プロパティを取得することで決定できます。System.IO.FileStream
オブジェクトのRead
メソッドを呼び出し、読み取るバイト配列、開始位置、ストリーム長を渡すことにより、バイト配列にストリームデータを入力します。MTOM
フィールドにバイト配列の内容を割り当てることにより、BLOB
オブジェクトに入力します。
- コンストラクタを使用して
-
変換の実行時オプションを設定します。
- コンストラクターを呼び出して
ToPSOptionsSpec
オブジェクトを作成します。 ToPSOptionsSpec
オブジェクトのデータメンバーに値を割り当てて、実行時オプションを設定します。例えば、作成する PostScript レベルを定義するには、ToPSOptionsSpec
オブジェクトのpsLevel
データメンバーにPSLevel
列挙値を割り当てます。
- コンストラクターを呼び出して
-
PDF ドキュメントを PostScript ファイルに変換します。
GeneratePDFServiceService
オブジェクトのtoPS2
メソッドを呼び出して、次の値を渡します。- PostScript ファイルに変換する PDF ドキュメントを表す
BLOB
オブジェクト - 実行時のオプションを指定する
ToPSOptionsSpec
オブジェクト
変換が完了したら、
BLOB
オブジェクトのMTOM
プロパティにアクセスして、PostScript ドキュメントを表すバイナリデータを抽出します。PostScript ファイルに書き出すことができるバイト配列を返します。 - PostScript ファイルに変換する PDF ドキュメントを表す
-
PostScript ファイルを保存します。
- コンストラクターを呼び出して、
System.IO.FileStream
オブジェクトを作成します。PS ファイルの場所を表す文字列値を渡します。 encryptPDFUsingPassword
メソッドから返されたBLOB
オブジェクトのデータ内容を格納するバイト配列を作成します。BLOB
オブジェクトのMTOM
フィールドの値を取得して、バイト配列にデータを入力します。- コンストラクターを呼び出して
System.IO.FileStream
オブジェクトを渡すことによって、System.IO.BinaryWriter
オブジェクトを作成します。 System.IO.BinaryWriter
オブジェクトのWrite
メソッドを呼び出し、バイト配列を渡して、バイト配列の内容を PostScript ファイルに書き込みます。
- コンストラクターを呼び出して、
関連情報
PDFドキュメントの画像形式への変換 converting-pdf-documents-to-image-formats
Convert PDF サービスを使用すると、PDF ドキュメントを JPEG、JPEG 2000、TIFF、PNG などの画像形式にプログラムで変換できます。PDF ドキュメントを画像ファイルに変換することにより、PDF ドキュメントを画像ファイルとして使用できます。例えば、画像をストレージ用のエンタープライズコンテンツ管理システムに配置できます。
Convert PDF サービスは、PDF ドキュメントを画像に変換する際に、ドキュメント内のページごとに個別の画像を作成します。例えば、ドキュメントのページ数が 20 の場合、 Convert PDF サービスは 20 個の画像ファイルを作成します。PDF ドキュメントを PDF 形式に変換する場合、PDF ドキュメント内のページごとに個々の画像を作成するか、画像ドキュメント全体の単一の画像ファイルを作成できます。
手順の概要 summary_of_steps-1
PDF ドキュメントをサポートされている任意のタイプに変換するには、次の手順を実行します。
- プロジェクトファイルを含めます。
- Convert PDF サービスクライアントを作成します。
- 変換する PDF ドキュメントを取得します。
- 実行時オプションを設定します。
- PDF を画像に変換します。
- コレクションから画像ファイルを取得します。
プロジェクトファイルを含める
開発プロジェクトに必要なファイルを含めます。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 ファイルとして保存できます。
関連トピック
Java API を使用して PDF ドキュメントを画像ファイルに変換 convert-a-pdf-document-to-image-files-using-the-java-api
Convert PDF サービス API(Java)を使用して、PDFドキュメントを画像形式に変換します。
-
プロジェクトファイルを含めます。
adobe-convertpdf-client.jar などのクライアント JAR ファイルを Java プロジェクトのクラスパスに含めます。
-
Convert PDF クライアントを作成します。
- 接続プロパティを含む
ServiceClientFactory
オブジェクトを作成します。 - コンストラクタを使用して
ConvertPdfServiceClient
オブジェクトを渡すことによって、ServiceClientFactory
オブジェクトを作成します。
- 接続プロパティを含む
-
変換する PDF ドキュメントを取得します。
- コンストラクターを使用して、PDF ドキュメントの場所を指定する文字列値を渡すことにより、変換する PDF ドキュメントを表す
java.io.FileInputStream
オブジェクトを作成します。 - コンストラクタを使用して
com.adobe.idp.Document
オブジェクトを渡すことによって、java.io.FileInputStream
オブジェクトを作成します。
- コンストラクターを使用して、PDF ドキュメントの場所を指定する文字列値を渡すことにより、変換する PDF ドキュメントを表す
-
実行時オプションを設定します。
- コンストラクタを使用して
ToImageOptionsSpec
オブジェクトを作成します。 - 必要に応じて、このオブジェクトに属するメソッドを呼び出します。例えば、
setImageConvertFormat
メソッドを呼び出して、形式のタイプを 指定するImageConvertFormat
列挙値を渡すことにより、画像のタイプを設定します。
note note NOTE ImageConvertFormat
列挙値の設定は必須です。 - コンストラクタを使用して
-
PDF を画像に変換します。
ConvertPdfServiceClient
オブジェクトのtoImage2
メソッドを呼び出して、次の値を渡します。- 変換する PDF ドキュメントを表す
com.adobe.idp.Document
オブジェクト。 - ターゲット画像の形式に関する各種の環境設定が含まれる
com.adobe.livecycle.converpdfservice.client.ToImageOptionsSpec
オブジェクト。
toImage2
メソッドは、画像が含まれるjava.util.List
オブジェクトを返します。コレクションに含まれる各要素は、com.adobe.idp.Document
のインスタンスです。 - 変換する PDF ドキュメントを表す
-
コレクションから画像ファイルを取得します。
java.util.List
オブジェクトを繰り返して、画像が存在するかを判断します。各要素は、com.adobe.idp.Document
のインスタンスです。com.adobe.idp.Document
オブジェクトのcopyToFile
メソッドを呼び出し、java.io.File
オブジェクトを渡して、画像を保存します。
関連トピック
Web サービス API を使用して PDF ドキュメントを画像ファイルに変換 convert-a-pdf-document-to-image-files-using-the-web-service-api
Convert PDF サービス API(web サービス)を使用して、PDF ドキュメントを画像の形式に変換します。
-
プロジェクトファイルを含めます。
MTOM を使用する Microsoft .NET プロジェクトを作成します。WSDL 定義
http://localhost:8080/soap/services/ConvertPDFService?WSDL&lc_version=9.0.1
を使用するようにします。note note NOTE localhost
を、AEM Forms をホストしているサーバーの IP アドレスに置き換えます。 -
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.Basic
をBasicHttpBindingSecurity.Transport.ClientCredentialType
フィールドに割り当てます。 - 定数値
BasicHttpSecurityMode.TransportCredentialOnly
をフィールドBasicHttpBindingSecurity.Security.Mode
に割り当てます。
-
-
変換する PDF ドキュメントを取得します。
- コンストラクタを使用して
BLOB
オブジェクトを作成します。このBLOB
オブジェクトは、PDF フォームを格納するために使用します。 - コンストラクターを呼び出して
System.IO.FileStream
オブジェクトを作成します。PDF フォームの場所と、ファイルを開くときのモードを指定する文字列値を渡します。 System.IO.FileStream
オブジェクトの内容を格納するバイト配列を作成します。バイト配列のサイズは、System.IO.FileStream
オブジェクトのLength
プロパティを取得することで決定します。System.IO.FileStream
オブジェクトのRead
メソッドを呼び出して、バイト配列にストリームデータを入力します。読み取り対象のバイト配列、開始位置、ストリーム長を渡します。MTOM
フィールドを割り当てることにより、BLOB
オブジェクトにバイト配列の内容を入力します。
- コンストラクタを使用して
-
実行時オプションを設定します。
- コンストラクタを使用して
ToImageOptionsSpec
オブジェクトを作成します。 - 必要に応じて、このオブジェクトに属するメソッドを呼び出します。例えば、画像のタイプを設定するには、
setImageConvertFormat
メソッドを呼び出し、フォーマットタイプを指定するImageConvertFormat
列挙値を渡します。
note note NOTE ImageConvertFormat
列挙値の設定は必須です。 - コンストラクタを使用して
-
PDF を画像に変換します。
ConvertPDFServiceService
オブジェクトのtoImage2
メソッドを呼び出して、次の値を渡します。- 変換するファイルを表す
BLOB
オブジェクト - ターゲット画像形式に関する様々な環境設定を含む
ToImageOptionsSpec
オブジェクト
toImage2
メソッドは、新しく作成された画像ファイルを含むMyArrayOfBLOB
オブジェクトを返します。 - 変換するファイルを表す
-
コレクションから画像ファイルを取得します。
MyArrayOfBLOB
オブジェクトのCount
フィールドの値を取得し、その中の要素数を決定します。各要素は 画像を含むBLOB
オブジェクトです。MyArrayOfBLOB
オブジェクトを繰り返し処理し、各画像ファイルを保存します。
関連トピック