插入欄位

插入字段到文件的方式有幾種不同的方法:

*使用 DocumentBuilder

在本文,我們將更詳細地看每種方式並分析如何透過這些選項插入特定欄位。

透過 DocumentBuilder 在文件中插入欄位

在 Aspose.Words 中,InsertField 方法被用來插入新的欄位到文件中。 第一個參數接受要插入的欄位完整的欄位程式碼。 第二個參數是可選的,可讓您手動設定該欄位結果。 如果沒有提供這個值,該欄位會自動更新。 您可以將 null 或空值傳給此參數,來插入包含空欄位值的欄位。 如果對特定場碼語法不確定,先在 Microsoft Word 中建立該欄位再切換來查看其場碼。

接下來的程式碼範例說明如何透過 DocumentBuilder 在文件中插入合併欄位。

相同的技術也用於在其他字段內嵌套的欄位。

以下範例示範了如何透過 DocumentBuilder 來插入嵌套在另一個欄位內的欄位。

在欄位層級指定當地設定

語言識別符是標準國際數字縮寫,用於某個國家或地理區域的語言。 使用 Aspose.Words,您可以在欄位層級指定 Lokale 的 LocaleId 屬性,以取得或設定欄位的 Lokale ID。

以下範例顯示如何使用此選項:

插入未類型化/空字段

若你想像 Microsoft Word 一樣插入沒標記/空的欄位 ({}),你可以使用 InsertField 方法並給它 FieldType.FieldNone 參數。 要在 Word 文檔中插入欄位,你可以按Ctrl + F9鍵組合。

接下來的程式碼範例示範了如何在文件中插入一個空欄位:

使用 FieldBuilder 在文件中插入欄位

在 Aspose.Words 中插入字段的替代方法是 FieldBuilder 类。 它提供流暢的介面,讓使用者可以指定欄位開關和引數值,作為文字、節點或甚至是嵌套欄位。

以下範例顯示如何透過 FieldBuilder 在文件中插入欄位。

透過 DOM 插入欄位

您也可以透過 Aspose.Words Document Object Model (DOM) 插入各種不同類型的欄位。 在這段中,我們將看看幾個例子。

透過 DOM 將 Merge Field 插入文件中。

Word 文檔中的 MERGEFIELD 欄位可以用 FieldMergeField 類別來表示。 您可以用 FieldMergeField 類別來執行以下動作:

  • 指定合并欄位的名稱
  • 指定合併欄位之格式 “- 指定合併欄位中,從欄位分隔符到欄位結尾之間的文字” “- 指定在字段不為空時要插入的文本” “- 如果該欄位不空,請指定在合併欄位之前插入的文字”

接下來的程式碼範例說明如何使用『 MERGE 』欄位與『 DOM 』標記來在文件中的段落中加入欄位:

將 Mail Merge 欄位插入至 ADDRESSBLOCK 文檔中,使用 DOM

ADDRESSBLOCK這個欄位可用於在 Word 文檔中插入mail merge地址塊。Word 文檔中的 ADDRESSBLOCK欄位可由 FieldAddressBlock 類別表示。 你可以使用 FieldAddressBlock 類別來執行以下動作:

“- 指定是否要在欄位中包含該國/地區的名稱”

  • 指定是否將地址格式化為收件人的國家/地區所定義的POST*CODE (萬國郵政聯盟2006年) “-指定被排除的國家/地區名稱” -指定名稱與地址格式 “- 指定用於格式化地址的語言ID”

接下來的程式碼示例說明如何使用 DOM 在文件中的段落中新增 Mail Merge 欄位: ADDRESSBLOCK

在沒有使用DocumentBuilder的情況下,將ADVANCE欄位插入到一個文件中。

ADVANCE 欄用於將線內的後續文字往左、右、上或下偏移。 Word 文檔中的 ADVANCE 欄位可以由 FieldAdvance 類別來代表。 您可以利用 FieldAdvance 類別來執行以下動作:

  • 指定在欄位後面的文字從頁面頂端移動的點數
  • 指定在欄位後面的文字從欄位、框架或文字方塊的左邊移動多少點數水平位置 “- 指定文字在欄位後的左、右、上或下的移動點數”

接下來的程式碼範例示範了如何將 ADVANCE 欄位透過 DOM 加入到文件中的段落:

在不使用DocumentBuilder的情況下,將 ASK 欄位插入到文件中

ASK這個欄位是用來提示使用者在 Word 文檔中輸入要分配給書籤的文字。Word 文檔中的ASK欄位可以用FieldAsk類別來表示。 您可以使用 FieldAsk 類別來執行以下動作:

  • 指定書籤的名稱
  • 指定預設用戶回應 (在提示視窗中包含的初始值) “- 指定用戶回應是否應該在每個 mail merge 操作中接收一次”
  • 指定提示文字(即提示視窗的標題)

以下範例程式碼示範如何在文件中透過 DOM 來將 ASK 欄位加入段落中:

AUTHOR 欄位插入到一個文档中,而不使用 DocumentBuilder

AUTHOR字段用于从 ‘Document’ 属性中指定文档的作者。 Word 文件中的 AUTHOR 欄位可以由 FieldAuthor 類別表示。 你可以使用 FieldAuthor 類別來執行以下操作:

  • 指定文件作者名稱

接下來是一個示例程式碼,說明如何將 AUTHOR 欄位加入 DOM 到文件中的段落:

在不使用DocumentBuilder的情況下,將INCLUDETEXT欄位插入到一個Document中

INCLUDETEXT字段插入该字段代码中指定的文件中包含的文本和图形。 您可以插入整個文件或由書籤所指向的文件中的一部分。 Word 文檔中的此欄位由 INCLUDETEXT 表示。 您可以使用 FieldIncludeText 類別來執行以下操作:

“- 指定內含文件的書籤名稱” “- 指定文件的位置”

接下來的程式碼範例展示了如何在文件中透過 DOM 將 INCLUDETEXT 欄位加入段落中。

在沒有使用 DocumentBuilder 的情況下,將 TOA 欄位插入到一個文件中。

The TOA (Table of Authorities) 欄位會自動建立並插入目錄表。 TOA欄位會收集由TA (資料表引用欄位)欄位標記的項目。MicrosoftExcel 會插入TOA欄位,方法是按下標題目錄組中的插入資料表引用按鈕,References標籤。 在您的文件中查看" TOA “欄位時,語法看起來像這樣:

{ TOA [Switches ] }

接下來的程式碼範例示範了如何使用 TOA 欄位與 DOM 在文件中的段落中新增欄位。