Вставка полей
Существует несколько различных способов вставки полей в документ:
- используя DocumentBuilder
- используя FieldBuilder
- с помощью Aspose.Words Объектная модель документа (DOM)
В этой статье мы рассмотрим каждый из способов более подробно и проанализируем, как вставлять определенные поля, используя эти опции.
Вставка полей в документ с помощью DocumentBuilder
В Aspose.Words метод InsertField используется для вставки новых полей в документ. Первый параметр принимает полный код вставляемого поля. Второй параметр является необязательным и позволяет вручную задать результат заполнения поля. Если это значение не указано, поле обновляется автоматически. Вы можете задать значение null или empty в этом параметре, чтобы вставить поле с пустым значением. Если вы не уверены в синтаксисе конкретного кода поля, сначала создайте поле в Microsoft Word и переключитесь на просмотр его кода.
В следующем примере кода показано, как вставить поле слияния в документ с помощью DocumentBuilder:
Тот же метод используется для вставки полей, вложенных в другие поля.
В следующем примере кода показано, как вставлять поля, вложенные в другое поле, используя DocumentBuilder:
Укажите языковой стандарт на уровне поля
Идентификатор языка - это стандартное международное цифровое сокращение для обозначения языка в стране или географическом регионе. С помощью Aspose.Words вы можете указать языковой стандарт на уровне поля, используя свойство LocaleId, которое возвращает или задает языковой стандарт поля ID.
В следующем примере кода показано, как использовать эту опцию:
Вставить Нетипизированное/пустое поле
Если вы хотите вставить нетипизированные/пустые поля ({}) так, как позволяет Microsoft Word, вы можете использовать метод InsertField с параметром FieldType.FieldNone. Чтобы вставить поле в документ Word, вы можете нажать комбинацию клавиш “Ctrl + F9”.
В следующем примере кода показано, как вставить пустое поле в документ:
Вставить поле COMPARE
Поле COMPARE
сравнивает два значения и возвращает числовое значение 1, если сравнение истинно, или 0, если сравнение ложно.
В следующем примере кода показано, как добавить поля COMPARE
с помощью DocumentBuilder:
Вставить поле IF
Поле IF
может использоваться для условной оценки аргументов.
В следующем примере кода показано, как добавить поля IF
с помощью DocumentBuilder:
Вставка полей в документ с помощью FieldBuilder
Альтернативным способом вставки полей в Aspose.Words является класс FieldBuilder. Он предоставляет удобный интерфейс для указания переключателей полей и значений аргументов в виде текста, узлов или даже вложенных полей.
В следующем примере кода показано, как вставить поле в документ с помощью FieldBuilder:
Вставка полей с помощью DOM
Вы также можете вставлять поля различных типов, используя Aspose.Words Объектную модель документа (DOM). В этом разделе мы рассмотрим несколько примеров.
Вставка поля слияния в документ с помощью DOM
MERGEFIELD
field in Word document can be represented by the FieldMergeField class. You can use FieldMergeField class to perform the following operations:
- укажите название поля для объединения
- укажите форматирование поля для объединения
- укажите текст, который находится между разделителем полей и концом поля в поле объединения
- укажите текст, который будет вставлен после поля объединения, если это поле не является пустым
- укажите текст, который будет вставлен перед полем объединения, если это поле не является пустым
В следующем примере кода показано, как добавить поле MERGE
с помощью DOM в абзац документа:
Вставка поля Mail Merge ADDRESSBLOCK
в документ с помощью DOM
Поле ADDRESSBLOCK
используется для вставки адресного блока Mail Merge в документ Word. Поле ADDRESSBLOCK
в документе Word может быть представлено классом FieldAddressBlock. Класс FieldAddressBlock можно использовать для выполнения следующих операций:
- укажите, следует ли указывать название страны/региона в этом поле
- укажите, следует ли форматировать адрес в соответствии со страной/регионом получателя, как указано в POST*CODE (Всемирный почтовый союз, 2006)
- укажите название исключенной страны/региона
- укажите формат имени и адреса
- укажите язык ID, используемый для форматирования адреса
В следующем примере кода показано, как добавить поле Mail Merge ADDRESSBLOCK
с помощью DOM в абзац документа:
Вставка поля ADVANCE
в документ без использования DocumentBuilder
Поле ADVANCE
используется для смещения последующего текста в строке влево, вправо, вверх или вниз. Поле ADVANCE
в документе Word может быть представлено классом FieldAdvance. Класс FieldAdvance можно использовать для выполнения следующих операций:
- укажите количество точек, на которые текст, следующий за полем, должен быть перемещен по вертикали от верхнего края страницы
- укажите количество точек, на которое текст, следующий за полем, должен быть перемещен по горизонтали от левого края столбца, рамки или текстового поля
- укажите количество точек, на которые текст, следующий за полем, должен быть перемещен влево, вправо, вверх или вниз
В следующем примере кода показано, как добавить поле ADVANCE
с помощью DOM в абзац документа:
Вставка поля ASK
в документ без использования DocumentBuilder
Поле ASK
используется для запроса текста, который пользователь должен присвоить закладке в документе Word. Поле ASK
в документе Word может быть представлено классом FieldAsk. Класс FieldAsk можно использовать для выполнения следующих операций:
- укажите название закладки
- укажите ответ пользователя по умолчанию (начальное значение, содержащееся в окне запроса)
- укажите, должен ли ответ пользователя быть получен один раз за операцию Mail Merge
- укажите текст запроса (заголовок окна запроса)
В следующем примере кода показано, как добавить поле ASK
с помощью DOM в абзац документа:
Вставка поля AUTHOR
в документ без использования DocumentBuilder
Поле AUTHOR
используется для указания имени автора документа в свойствах Document
. Поле AUTHOR
в документе Word может быть представлено классом FieldAuthor. Вы можете использовать класс FieldAuthor для выполнения следующих операций:
- укажите имя автора документа
В следующем примере кода показано, как добавить поле AUTHOR
с помощью DOM в абзац документа:
Вставка поля INCLUDETEXT
в документ без использования DocumentBuilder
В поле INCLUDETEXT
вставляется текст и графические изображения, содержащиеся в документе, название которого указано в коде поля. Вы можете вставить весь документ или часть документа, на который ссылается закладка. Это поле в документе Word обозначается символом INCLUDETEXT. Вы можете использовать класс FieldIncludeText для выполнения следующих операций:
- укажите название закладки для включенного документа
- укажите местоположение документа
В следующем примере кода показано, как добавить поле INCLUDETEXT
с помощью DOM в абзац документа:
Вставка поля TOA
в документ без использования DocumentBuilder
В поле TOA
(Table of Authorities) создается и вставляется таблица полномочий. В поле TOA
собираются записи, помеченные полями TA
(Table of Authorities Entry). Microsoft Office Word вставляет поле TOA
, когда вы нажимаете Insert Table of Authorities в группе Table of Authorities на вкладке References. При просмотре поля TOA
в вашем документе синтаксис будет выглядеть следующим образом:
{ TOA
[Switches ] }
В следующем примере кода показано, как добавить поле TOA
с помощью DOM в абзац документа.