フィールドの挿入
文書にフィールドを挿入するには、いくつかの方法があります:
- DocumentBuilderを使用する
- FieldBuilderを使用する
- を使用して Aspose.Wordsドキュメントオブジェクトモデル(DOM)
この記事では、それぞれの方法をより詳細に見て、これらのオプションを使用して特定のフィールドを挿入する方法を分析します。
DocumentBuilderを使用した文書へのフィールドの挿入
Aspose.Wordsでは、InsertFieldメソッドは文書に新しいフィールドを挿入するために使用されます。 最初のパラメータは、挿入するフィールドの完全なフィールドコードを受け入れます。 2番目のパラメータはオプションで、フィールドのフィールド結果を手動で設定できます。 これが指定されていない場合、フィールドは自動的に更新されます。 空のフィールド値を持つフィールドを挿入するには、このパラメータにnullまたはemptyを渡すことができます。 特定のフィールドコードの構文がわからない場合は、まずMicrosoft Wordにフィールドを作成し、そのフィールドコードを表示するように切り替えます。
次のコード例は、DocumentBuilderを使用して差し込み項目を文書に挿入する方法を示しています:
同じ手法を使用して、他のフィールド内にネストされたフィールドを挿入します。
次のコード例は、DocumentBuilderを使用して別のフィールド内にネストされたフィールドを挿入する方法を示しています:
フィールドレベルでのロケールの指定
言語識別子は、国または地理的地域の言語の標準的な国際的な数値省略形です。 Aspose.Wordsを使用すると、フィールドのロケールIDを取得または設定するLocaleIdプロパティを使用して、フィールドレベルでロケールを指定できます。
次のコード例は、このオプションを使用する方法を示しています:
型指定されていない/空のフィールドを挿入する
Microsoft Wordが許可するように型なし/空のフィールド({})を挿入する場合は、InsertFieldメソッドをFieldType.FieldNoneパラメータで使用できます。 Word文書にフィールドを挿入するには、「Ctrl+F9」キーの組み合わせを押すことができます。
次のコード例は、空のフィールドをドキュメントに挿入する方法を示しています:
FieldBuilderを使用した文書へのフィールドの挿入
Aspose.Wordsにフィールドを挿入する別の方法はFieldBuilderクラスです。 フィールドスイッチと引数値をテキスト、ノード、またはネストされたフィールドとして指定するための流暢なインターフェイスを提供します。
次のコード例は、FieldBuilderを使用してドキュメントにフィールドを挿入する方法を示しています:
DOMを使用したフィールドの挿入
次を使用して、さまざまなタイプのフィールドを挿入することもできます Aspose.Wordsドキュメントオブジェクトモデル(DOM). このセクションでは、いくつかの例を見ていきます。
DOMを使用した文書への差し込み項目の挿入
Word文書のMERGEFIELDフィールドは、FieldMergeFieldクラスで表すことができます。 FieldMergeFieldクラスを使用して、次の操作を実行できます:
- 差し込み項目の名前を指定します
- 差し込み項目の書式設定を指定します
- 差し込み項目のフィールド区切り文字とフィールドの末尾の間にあるテキストを指定します
- フィールドが空白でない場合は、差し込み項目の後に挿入するテキストを指定します
- フィールドが空白でない場合は、差し込み項目の前に挿入するテキストを指定します
次のコード例は、DOMを使用してMERGEフィールドを文書内の段落に追加する方法を示しています:
DOMを使用して文書にMail Mergeアドレスブロックフィールドを挿入する
ADDRESSBLOCKフィールドは、Word文書にmail mergeアドレスブロックを挿入するために使用されます。 Word文書のADDRESSBLOCKフィールドは、FieldAddressBlockクラスで表すことができます。 FieldAddressBlockクラスを使用して、次の操作を実行できます:
- フィールドに国/地域の名前を含めるかどうかを指定します
- POST*CODE(Universal Postal Union2006)で定義されているように、受取人の国/地域に応じて住所を書式設定するかどうかを指定します
- 除外された国/地域名を指定します
- 名前とアドレスの形式を指定します
- アドレスの書式設定に使用する言語IDを指定します
次のコード例は、DOMを使用してMail MergeADDRESSBLOCKフィールドを文書内の段落に追加する方法を示しています:
DocumentBuilderを使用せずに文書にAdvanceフィールドを挿入する
ADVANCEフィールドは、行内の後続のテキストを左、右、上、または下にオフセットするために使用されます。 Word文書のADVANCEフィールドは、FieldAdvanceクラスで表すことができます。 FieldAdvanceクラスを使用して、次の操作を実行できます:
- フィールドの後に続くテキストをページの上端から垂直方向に移動するポイントの数を指定します
- フィールドに続くテキストを、列、フレーム、またはテキストボックスの左端から水平方向に移動するポイントの数を指定します
- フィールドの後に続くテキストを左、右、上、または下に移動するポイントの数を指定します
次のコード例は、DOMを使用してADVANCEフィールドを文書内の段落に追加する方法を示しています:
DocumentBuilderを使用せずに文書にASKフィールドを挿入する
ASKフィールドは、Word文書のブックマークに割り当てるテキストの入力をユーザーに求めるために使用されます。 Word文書のASKフィールドは、FieldAskクラスで表すことができます。 FieldAskクラスを使用して、次の操作を実行できます:
- ブックマークの名前を指定します
- デフォルトのユーザー応答(プロンプトウィンドウに含まれる初期値)を指定します。
- mail merge操作ごとにユーザー応答を1回受信するかどうかを指定します
- プロンプトテキスト(プロンプトウィンドウのタイトル)を指定します。
次のコード例は、DOMを使用してASKフィールドを文書内の段落に追加する方法を示しています:
DocumentBuilderを使用せずに文書にAUTHORフィールドを挿入する
AUTHORフィールドは、Documentプロパティからドキュメントの作成者の名前を指定するために使用されます。 Word文書のAUTHORフィールドは、FieldAuthorクラスで表すことができます。 FieldAuthorクラスを使用して、次の操作を実行できます:
- 文書作成者の名前を指定します
次のコード例は、DOMを使用してAUTHORフィールドを文書内の段落に追加する方法を示しています:
DocumentBuilderを使用せずに文書にINCLUDETEXTフィールドを挿入する
INCLUDETEXTフィールドは、フィールドコードで指定された文書に含まれるテキストとグラフィックスを挿入します。 ドキュメント全体またはブックマークで参照されるドキュメントの一部を挿入できます。 Word文書のこのフィールドは、INCLUDETEXTで表されます。 FieldIncludeTextクラスを使用して、次の操作を実行できます:
- 含まれるドキュメントのブックマーク名を指定します
- 文書の場所を指定します
次のコード例は、DOMを使用してINCLUDETEXTフィールドを文書内の段落に追加する方法を示しています:
DocumentBuilderを使用せずに文書にTOAフィールドを挿入する
TOA(Table of Authorities)フィールドは、権限のテーブルを構築して挿入します。 TOAフィールドは、TA(Table of Authorities Entry)フィールドでマークされたエントリを収集します。 Microsoft Office Wordでは、ReferencesタブのTable of AuthoritiesグループでInsert Table of AuthoritiesをクリックするとTOAフィールドが挿入されます。 ドキュメントのTOAフィールドを表示すると、構文は次のようになります:
{ TOA [Switches ] }
次のコード例は、DOMを使用してTOAフィールドを文書内の段落に追加する方法を示しています:
/