ブックマークを含むPDFドキュメントをアセンブリできます。 たとえば、しおりが含まれていないPDFドキュメントがあり、しおりを指定して変更するとします。 Assembler サービスを使用すると、ブックマークを含まないPDFドキュメントにそのドキュメントを渡し、ブックマークを含むPDFドキュメントに戻すことができます。
ブックマークには、次のプロパティが含まれます。
この説明では、次の DDX ドキュメントが使用されていると仮定します。
<?xml version="1.0" encoding="UTF-8"?>
<DDX xmlns="https://ns.adobe.com/DDX/1.0/">
<PDF result="FinalDoc.pdf">
<PDF source="Loan.pdf">
<Bookmarks source="doc2" />
</PDF>
</PDF>
</DDX>
この DDX ドキュメント内では、 source 属性に値が割り当てられています Loan.pdf
. この DDX ドキュメントは、1 つのPDFドキュメントを Assembler サービスに渡すように指定します。 ブックマーク付きのPDFドキュメントを組み立てる場合は、結果ドキュメント内のブックマークを説明するブックマーク XML ドキュメントを指定する必要があります。 ブックマーク XML ドキュメントを指定するには、 Bookmarks
要素が DDX ドキュメント内で指定されています。
この DDX ドキュメントの例では、 Bookmarks
要素の指定 doc2
を値として使用します。 この値は、Assembler サービスに渡される入力マップに、という名前のキーが含まれていることを示します doc2
. の値 doc2
キーは com.adobe.idp.Document
ブックマーク XML ドキュメントを表す値。 ( 詳しくは、 Assembler サービスと DDX リファレンス.)
このトピックでは、次の XML ブックマーク言語を使用して、ブックマークを含むPDFドキュメントを構成します。
<?xml version="1.0" encoding="UTF-8"?>
<Bookmarks xmlns="https://ns.adobe.com/pdf/bookmarks" version="1.0">
<Bookmark>
<Action>
<Launch NewWindow="true">
<File Name="C:\Adobe\LoanDetails.pdf" />
</Launch>
</Action>
<Title>Open the Loan document</Title>
</Bookmark>
<Bookmark>
<Action>
<Launch>
<Win Name="C:\WINDOWS\notepad.exe" />
</Launch>
</Action>
<Title>Launch NotePad</Title>
</Bookmark>
</Bookmarks>
このブックマーク XML ドキュメント内には、ユーザーがブックマークをクリックしたときに実行されるアクションを定義する Action 要素があります。 Action 要素の下には、NotePad などのアプリケーションを起動し、アプリケーションファイルなどのファイルを開く Launch 要素があります。 PDFファイルを開くには、開くファイルを指定する File 要素を使用する必要があります。 例えば、このセクションで指定したブックマーク XML ファイルでは、開くファイルの名前は LoanDetails.pdf です。
サポートされるアクションの詳細については、 Action
element」 Assembler サービスと DDX リファレンス.
この節で指定した DDX ドキュメントとブックマーク XML ファイルを入力として指定した場合、Assembler サービスは、次のブックマークを含むPDFドキュメントをアセンブルします。
ユーザーが ローンの詳細を開く ブックマークの場合は、LoanDetails.pdf が開きます。 同様に、ユーザーが NotePad を起動 ブックマークの場合は、NotePad が起動します。
この節を読む前に、Assembler サービスを使用したPDFドキュメントの組み立てに関する知識を身に付けておくことをお勧めします。 このセクションでは、入力ドキュメントを含むコレクションオブジェクトの作成や、返されたコレクションオブジェクトから結果を抽出する方法の学習など、概念については説明しません。 ( プログラムによるPDF文書の作成.)
Assembler サービスについて詳しくは、 AEM Formsのサービスリファレンス.
DDX ドキュメントについて詳しくは、 Assembler サービスと DDX リファレンス.
ブックマークを含むPDF・ドキュメントを組み立てるには、次のタスクを実行します。
プロジェクトファイルを含める
必要なファイルを開発プロジェクトに含めます。 Java を使用してクライアントアプリケーションを作成する場合は、必要な JAR ファイルを含めます。 Web サービスを使用している場合は、プロキシファイルを必ず含めてください。
次の JAR ファイルをプロジェクトのクラスパスに追加する必要があります。
AEM Formsが JBoss 以外のサポート対象の J2EE アプリケーションサーバーにデプロイされている場合は、adobe-utilities.jar ファイルと jbossall-client.jar ファイルを、AEM Formsがデプロイされている J2EE アプリケーションサーバーに固有の JAR ファイルに置き換える必要があります。 すべてのAEM Forms JAR ファイルの場所について詳しくは、 AEM Forms Java ライブラリファイルを含める.
Assembler クライアントのPDF
Assembler 操作をプログラムで実行する前に、Assembler サービスクライアントを作成する必要があります。
既存の DDX ドキュメントの参照
DDX ドキュメントを参照して、アセンブリドキュメントをPDFする必要があります。 この DDX ドキュメントには Bookmarks
要素:ブックマークを含むPDFをアセンブルするよう Assembler サービスに指示します。 (この節で前述した DDX ドキュメントの例を参照)。
ブックマークを追加するPDFドキュメントを参照します。
ブックマークを追加するPDFドキュメントを参照します。 参照先のブックマークドキュメントに既にPDFが含まれているかどうかは関係ありません。 この Bookmarks
要素がPDFソース要素の子である場合、ブックマークはPDFソースに既に存在する要素を置き換えます。 ただし、既存のブックマークを保持する場合は、 Bookmarks
は、PDFソース要素の兄弟です。 例えば、次の例を考えてみましょう。
<PDF result="foo">
<PDF source="inDoc"/>
<Bookmarks source="doc2"/>
</PDF>
ブックマーク XML ドキュメントを参照します
新しいブックマークを含むPDFを組み立てるには、ブックマーク XML ドキュメントを参照する必要があります。 ブックマーク XML ドキュメントは、Map コレクションオブジェクト内の Assembler サービスに渡されます。 (例については、この節で前述したブックマーク XML ドキュメントを参照してください)。
詳しくは、 Assembler サービスと DDX リファレンス.
PDF文書とブックマーク XML 文書を Map コレクションに追加する
ブックマークを追加するPDF文書と、ブックマーク XML 文書の両方を Map コレクションに追加する必要があります。 したがって、 Map コレクションオブジェクトには次の 2 つの要素が含まれます。PDFドキュメントとブックマーク XML ドキュメント。
実行時オプションを設定
ジョブの実行中に Assembler サービスの動作を制御する実行時オプションを設定できます。 例えば、エラーが発生した場合にジョブの処理を続行するよう Assembler サービスに指示するオプションを設定できます。 設定できる実行時オプションについて詳しくは、 AssemblerOptionSpec
のクラス参照 AEM Forms API リファレンス.
アセンブリPDF
新しいPDFを含むブックマークドキュメントを組み立てるには、Assembler サービスの invokeDDX
操作。 を使用する必要がある理由 invokeDDX
操作を、 invokeOneDocument
これは、Assembler サービスが Map コレクションオブジェクト内で渡すブックマーク XML ドキュメントを必要とするためです。 このオブジェクトは、 invokeDDX
操作。
しおりを含むPDFドキュメントを保存します
返されたマップオブジェクトから結果を抽出し、対応するPDF文書を保存する必要があります。 ( プログラムによるPDF文書の作成.)
関連トピック
Assembler Service API(Java) を使用して、PDFドキュメントをブックマークと共にアセンブリします。
プロジェクトファイルを含めます。
Java プロジェクトのクラスパスに、adobe-assembler-client.jar などのクライアント JAR ファイルを含めます。
Assembler クライアントをPDFします。
ServiceClientFactory
オブジェクトを作成します。(接続プロパティの設定を参照。)AssemblerServiceClient
オブジェクトのコンストラクタを使用し、 ServiceClientFactory
オブジェクト。既存の DDX ドキュメントを参照します。
java.io.FileInputStream
コンストラクターを使用して DDX ファイルの場所を指定する string 値を渡すことによって DDX ドキュメントを表すオブジェクト。com.adobe.idp.Document
オブジェクトを渡すことによって、java.io.FileInputStream
オブジェクトを作成します。ブックマークを追加するPDFドキュメントを参照します。
java.io.FileInputStream
オブジェクトのコンストラクタを使用し、PDF・ドキュメントの場所を渡す。com.adobe.idp.Document
オブジェクトのコンストラクタを使用し、 java.io.FileInputStream
オブジェクトドキュメントを含むPDF。ブックマーク XML ドキュメントを参照します。
java.io.FileInputStream
オブジェクトを指定します。com.adobe.idp.Document
オブジェクトを選択し、 java.io.FileInputStream
オブジェクトドキュメントを含むPDF。Map コレクションにPDF文書とブックマーク XML 文書を追加します。
の作成 java.util.Map
オブジェクトを使用して、入力PDF・ドキュメントとブックマーク XML ドキュメントの両方を保存します。
を呼び出して、入力PDFドキュメントを追加します。 java.util.Map
オブジェクトの put
メソッドを使用し、次の引数を渡す。
com.adobe.idp.Document
入力PDF・ドキュメントを格納するオブジェクト。を呼び出して、ブックマーク XML ドキュメントを追加します。 java.util.Map
オブジェクトの put
メソッドを使用し、次の引数を渡す。
com.adobe.idp.Document
ブックマーク XML ドキュメントを含むオブジェクト。実行時オプションを設定します。
AssemblerOptionSpec
コンストラクタを使用して実行時オプションを格納するオブジェクト。AssemblerOptionSpec
オブジェクト。 例えば、エラーが発生したときにジョブの処理を続行するように Assembler サービスに指示するには、 AssemblerOptionSpec
オブジェクトの setFailOnError
メソッドとパス false
.PDF文書を組み立てる。
を呼び出す AssemblerServiceClient
オブジェクトの invokeDDX
メソッドを使用して、以下の必須値を渡します。
com.adobe.idp.Document
使用する DDX ドキュメントを表すオブジェクトjava.util.Map
入力PDF文書とブックマーク XML 文書の両方を含むオブジェクト。com.adobe.livecycle.assembler.client.AssemblerOptionSpec
デフォルトのフォントやジョブログレベルを含む、実行時のオプションを指定するオブジェクトこの invokeDDX
メソッドは、 com.adobe.livecycle.assembler.client.AssemblerResult
ジョブの結果と発生した例外を含むオブジェクト。
しおりを含むPDFドキュメントを保存します。
新しく作成したPDF・ドキュメントを取得するには、次の操作を実行します。
AssemblerResult
オブジェクトの getDocuments
メソッド。 これにより、 java.util.Map
オブジェクト。java.util.Map
結果が見つかるまでオブジェクトを閉じます。 com.adobe.idp.Document
オブジェクト。 (DDX ドキュメントで指定されたPDF結果エレメントを使用して、ドキュメントを取得できます )。com.adobe.idp.Document
オブジェクトの copyToFile
メソッドを使用して、PDFドキュメントを抽出します。関連トピック
クイックスタート(SOAP モード):Java API を使用したPDFドキュメントのブックマークとのアセンブリ
Assembler Service API(Web サービス)を使用して、PDFドキュメントをブックマークと共にアセンブリします。
プロジェクトファイルを含めます。
MTOM を使用するMicrosoft .NET プロジェクトを作成します。 次の WSDL 定義を使用していることを確認します。 http://localhost:8080/soap/services/AssemblerService?WSDL&lc_version=9.0.1
.
置換 localhost
を、AEM Formsをホストするサーバーの IP アドレスに設定します。
Assembler クライアントをPDFします。
の作成 AssemblerServiceClient
オブジェクトのデフォルトのコンストラクタを使用します。
の作成 AssemblerServiceClient.Endpoint.Address
オブジェクトを System.ServiceModel.EndpointAddress
コンストラクタ。 WSDL をAEM Formsサービスに渡す文字列値 ( 例: http://localhost:8080/soap/services/AssemblerService?blob=mtom
) をクリックします。 を使用する必要はありません。 lc_version
属性。 この属性は、サービス参照を作成する際に使用されます。
の作成 System.ServiceModel.BasicHttpBinding
オブジェクトを作成するには、 AssemblerServiceClient.Endpoint.Binding
フィールドに入力します。 戻り値を BasicHttpBinding
にキャストします。
を System.ServiceModel.BasicHttpBinding
オブジェクトの MessageEncoding
~に向かって WSMessageEncoding.Mtom
. この値は、MTOM が確実に使用されるようにします。
次のタスクを実行して、基本的な HTTP 認証を有効にします。
AssemblerServiceClient.ClientCredentials.UserName.UserName
.AssemblerServiceClient.ClientCredentials.UserName.Password
.HttpClientCredentialType.Basic
フィールドに BasicHttpBindingSecurity.Transport.ClientCredentialType
.BasicHttpSecurityMode.TransportCredentialOnly
フィールドに BasicHttpBindingSecurity.Security.Mode
.既存の DDX ドキュメントを参照します。
BLOB
オブジェクトを作成します。この BLOB
オブジェクトは、DDX ドキュメントを保存するために使用されます。System.IO.FileStream
オブジェクトを開くには、コンストラクターを呼び出し、DDX ドキュメントのファイルの場所とファイルを開くモードを表す string 値を渡します。System.IO.FileStream
オブジェクト。 バイト配列のサイズは、 System.IO.FileStream
オブジェクトの Length
プロパティ。System.IO.FileStream
オブジェクトの Read
メソッドを使用し、読み込むバイト配列、開始位置、ストリーム長を渡す。BLOB
オブジェクトを割り当てる MTOM
フィールドにバイト配列の内容を入力します。ブックマークを追加するPDFドキュメントを参照します。
BLOB
オブジェクトを作成します。この BLOB
オブジェクトは、入力PDFを格納するために使用されます。System.IO.FileStream
オブジェクトを指定します。System.IO.FileStream
オブジェクト。 バイト配列のサイズは、 System.IO.FileStream
オブジェクトの Length
プロパティ。System.IO.FileStream
オブジェクトの Read
メソッドを使用し、読み込むバイト配列、開始位置、ストリーム長を渡す。BLOB
オブジェクトを割り当てる MTOM
フィールドにバイト配列の内容を入力します。ブックマーク XML ドキュメントを参照します。
BLOB
オブジェクトを作成します。この BLOB
オブジェクトは、ブックマーク XML ドキュメントを保存するために使用されます。System.IO.FileStream
オブジェクトを指定します。System.IO.FileStream
オブジェクト。 バイト配列のサイズは、 System.IO.FileStream
オブジェクトの Length
プロパティ。System.IO.FileStream
オブジェクトの Read
メソッドを使用し、読み込むバイト配列、開始位置、ストリーム長を渡す。BLOB
オブジェクトを割り当てる MTOM
フィールドにバイト配列の内容を入力します。Map コレクションにPDF文書とブックマーク XML 文書を追加します。
MyMapOf_xsd_string_To_xsd_anyType
オブジェクト。 このコレクションオブジェクトは、入力コレクションドキュメントとブックマーク XMLPDFを格納するために使用されます。MyMapOf_xsd_string_To_xsd_anyType_Item
オブジェクト。MyMapOf_xsd_string_To_xsd_anyType_Item
オブジェクトの key
フィールドに入力します。 この値は、DDX ドキュメントで指定されたPDFソース要素の値と一致する必要があります。BLOB
オブジェクトを指定し、PDFドキュメントを MyMapOf_xsd_string_To_xsd_anyType_Item
オブジェクトの value
フィールドに入力します。MyMapOf_xsd_string_To_xsd_anyType_Item
オブジェクトを MyMapOf_xsd_string_To_xsd_anyType
オブジェクト。 を呼び出す MyMapOf_xsd_string_To_xsd_anyType
オブジェクトの Add
メソッドを使用して、 MyMapOf_xsd_string_To_xsd_anyType
オブジェクト。 ( このタスクは、入力PDFドキュメントとブックマーク XML ドキュメントごとに実行します )。実行時オプションを設定します。
AssemblerOptionSpec
コンストラクタを使用して実行時オプションを格納するオブジェクト。AssemblerOptionSpec
オブジェクト。 例えば、エラーが発生した場合にジョブの処理を続行するように Assembler サービスに指示するには、 false
から AssemblerOptionSpec
オブジェクトの failOnError
データメンバー。PDF文書を組み立てる。
を呼び出す AssemblerServiceClient
オブジェクトの invokeDDX
メソッドを使用して、次の値を渡します。
BLOB
DDX ドキュメントを表すオブジェクトMyMapOf_xsd_string_To_xsd_anyType
入力ドキュメントを格納する配列AssemblerOptionSpec
実行時のオプションを指定するオブジェクトこの invokeDDX
メソッドは、 AssemblerResult
ジョブの結果と発生した可能性のある例外を含むオブジェクト。
しおりを含むPDFドキュメントを保存します。
新しく作成したPDF・ドキュメントを取得するには、次の操作を実行します。
AssemblerResult
オブジェクトの documents
フィールド ( Map
結果PDF文書を含むオブジェクト。Map
オブジェクトを閉じます。 次に、その配列メンバの value
から BLOB
.BLOB
オブジェクトの MTOM
フィールドに入力します。 これは、バイトの配列を返し、PDF・ファイルに書き出すことができます。関連トピック