Обзор конструктора документов
DocumentBuilder - это мощный класс, который ассоциируется с Document и позволяет создавать динамические документы с нуля или добавлять новые элементы к существующим.
DocumentBuilder предоставляет методы для вставки текста, checkbox файлов, ole-объектов, абзацев, списков, таблиц, изображений и других элементов содержимого. Позволяет задавать шрифты, форматирование абзацев или разделов и выполнять другие операции.
Конструктор документов или Aspose.Words DOM
DocumentBuilder дополняет классы и методы, доступные в объектной модели документа Aspose.Words (DOM), чтобы упростить наиболее распространенные задачи по созданию документов. То есть вы можете создавать и изменять содержимое документов как с помощью Aspose.Words DOM, что требует хорошего понимания древовидной структуры, так и с помощью DocumentBuilder. DocumentBuilder
- это “фасад” сложной структуры Document, который позволяет вам быстро и легко вставлять содержимое и форматировать его.
Операции, которые возможны с DocumentBuilder, также возможны при непосредственном использовании классов Aspose.Words DOM. Однако прямое использование классов Aspose.Words DOM обычно требует большего количества строк кода, чем использование DocumentBuilder.
Навигация по документам
Навигация по документу основана на концепции виртуального курсора, с помощью которого вы можете перемещаться в другое место документа, используя различные методы DocumentBuilder.move_to_XXX, такие как move_to_document_start и move_to_field. Этот виртуальный курсор указывает, куда будет вставляться текст при вызове методов write, writeln, insert_break, и других. Подробнее о виртуальном курсоре читайте в следующей статье “Навигация с помощью курсора”.
В следующем примере кода показано, как перейти к закладке:
Создание и модификация документов
Aspose.Words API предоставляет несколько классов, которые отвечают за форматирование различных элементов документа. Каждый из классов инкапсулирует свойства форматирования, относящиеся к определенному элементу документа, такому как текст, абзац, раздел и другие. Например, класс Font представляет свойства форматирования символов, класс ParagraphFormat представляет свойства форматирования абзацев и т.д. Объекты этих классов возвращаются соответствующими свойствами DocumentBuilder, которые имеют те же имена, что и классы. Таким образом, вы можете получить к ним доступ и задать желаемое форматирование во время создания документа.
Вы также можете вставить текст, checkbox, ole-объект, изображения, закладки, поля формы и другие элементы документа в положение курсора, используя метод Write
или любой из методов DocumentBuilder.insert_XXX, таких как insert_field, insert_html и аналогичные методы.
Давайте посмотрим, как создать простой документ, используя DocumentBuilder.
Создайте документ, используя DocumentBuilder
Для начала вам нужно создать DocumentBuilder и связать его с объектом Document. Вы создаете новый экземпляр DocumentBuilder, вызывая его конструктор, и передаете его объекту Document для присоединения к конструктору.
Чтобы вставить текст, передайте строку текста, которую вам нужно вставить в документ, методу write.
В следующем примере кода показано, как создать простой документ с помощью конструктора документов.
Укажите форматирование документа
Свойство font определяет форматирование текста. Этот объект содержит различные атрибуты шрифта (название шрифта, размер шрифта, цвет и т.д.). Некоторые важные атрибуты шрифта также представлены свойствами DocumentBuilder, что позволяет получить к ним прямой доступ. Это логические свойства Font.bold, Font.italic и Font.underline.
В следующем примере кода показано, как вставить форматированный текст с помощью DocumentBuilder:
- font определяет форматирование символов, которое будет применяться ко всему тексту, вставленному начиная с текущей позиции в документе.
- paragraph_format определяет форматирование абзаца для текущего и всех остальных абзацев, которые будут вставлены.
- page_setup задает свойства страницы и раздела для текущего раздела и всего раздела, который будет вставлен.
- cell_format и row_format задают свойства форматирования, которые будут применяться к ячейкам и строкам таблицы, начиная с текущей позиции в документе и далее.
В этой ситуации “текущий” означает позицию, абзац, раздел, ячейку или строку, в которых находится курсор.