Обсуждение Document Builder

DocumentBuilder Это мощный класс, который ассоциируется с Document Это позволяет создавать динамические документы с нуля или добавлять новые элементы к уже существующим.

DocumentBuilder предоставляет методы для вставки текста, флажков, ole объектов, параграфов, списков, таблиц, изображений и других элементов контента. Он позволяет указывать шрифты, форматирование абзаца или раздела, а также выполнять другие операции.

Строитель документов или Aspose.Words DOM

DocumentBuilder классы и методы, доступные в Aspose.Words Document Object Model ()DOM) для упрощения наиболее распространенных задач по созданию документов. То есть, вы можете создавать и изменять содержание документов как через Aspose.Words DOM, что требует хорошего понимания структуры дерева и использования документа. The DocumentBuilder Это “фасад” для комплекса. Document Структура, которая позволяет быстро и легко вставлять контент и форматирование.

Операции, которые возможны при DocumentBuilder Это возможно и при использовании классов Aspose.Words DOM напрямую. Однако, используя Aspose.Words DOM Классы напрямую обычно требуют больше строк кода, чем использование DocumentBuilder.

Навигация документов

Навигация по документам основана на понятии виртуального курсора, с помощью которого можно перемещаться в другое место документа с помощью различных DocumentBuilder.MoveToXXX Такие методы, как MoveToDocumentStart и MoveToField. Этот виртуальный курсор указывает, где текст будет вставлен при вызове методов. Write, Writeln, InsertBreak, и другие. Смотрите следующую статью “Навигация с курсором”, чтобы узнать больше о виртуальном курсоре.

Следующий пример кода показывает, как перейти к закладке:

// For complete examples and data files, please go to https://github.com/aspose-words/Aspose.Words-for-.NET
Document doc = new Document(dataDir + "DocumentBuilder.doc");
DocumentBuilder builder = new DocumentBuilder(doc);
builder.MoveToBookmark("CoolBookmark", false, true);
builder.Writeln("This is a very cool bookmark.");

Создание и изменение документов

Aspose.Words API Предоставляет несколько классов, которые отвечают за форматирование различных элементов документа. Каждый из классов инкапсулирует свойства форматирования, связанные с конкретным элементом документа, таким как текст, абзац, раздел и другие. Например, в Font класс представляет свойства форматирования символов, ParagraphFormat Класс представляет свойства форматирования абзацев и так далее. Объекты этих классов возвращаются соответствующими DocumentBuilder Свойства, имеющие те же названия, что и классы. Таким образом, вы можете получить к ним доступ и установить желаемое форматирование во время сборки документа.

Вы также можете вставить текст, флажок, оле-объект, изображения, закладки, поля форм и другие элементы документа в положение курсора, используя Write метод или любой из DocumentBuilder.InsertXXX методов, таких как InsertField, InsertHtml, и аналогичных методов.

Рассмотрим, как создать простой документ, используя DocumentBuilder.

Создание документа с помощью DocumentBuilder

Для начала вам нужно создать DocumentBuilder и связать его с Document объект. Вы создаете новый пример DocumentBuilder Позвонив своему конструктору и передав его Document объект для крепления к строителю.

Чтобы вставить текст, передайте строку текста, которую вам нужно вставить в документ, на Write метод.

Следующий пример кода показывает, как создать простой документ с помощью конструктора документов.

// For complete examples and data files, please go to https://github.com/aspose-words/Aspose.Words-for-.NET
Document doc = new Document();
DocumentBuilder builder = new DocumentBuilder(doc);
builder.Write("Hello, world!");

Укажите формат документа

The Font Собственность определяет форматирование текста. Этот объект содержит различные атрибуты шрифта (имя шрифта, размер шрифта, цвет и так далее). Некоторые важные атрибуты шрифта также представлены DocumentBuilder Свойства, позволяющие получить к ним прямой доступ. Они являются Font.Bold, Font.Italic, и Font.Underline Булевы свойства.

Следующий пример кода показывает, как вставить отформатированный текст с помощью DocumentBuilder:

// For complete examples and data files, please go to https://github.com/aspose-words/Aspose.Words-for-.NET
// The path to the documents directory.
string dataDir = RunExamples.GetDataDir_WorkingWithDocument();
// Initialize document.
Document doc = new Document();
DocumentBuilder builder = new DocumentBuilder(doc);
// Specify font formatting
Font font = builder.Font;
font.Size = 16;
font.Bold = true;
font.Color = System.Drawing.Color.Blue;
font.Name = "Arial";
font.Underline = Underline.Dash;
// Specify paragraph formatting
ParagraphFormat paragraphFormat = builder.ParagraphFormat;
paragraphFormat.FirstLineIndent = 8;
paragraphFormat.Alignment = ParagraphAlignment.Justify;
paragraphFormat.KeepTogether = true;
builder.Writeln("A whole paragraph.");
dataDir = dataDir + "DocumentBuilderInsertParagraph_out.doc";
doc.Save(dataDir);