Document

Document class

Представляет документ Word.

public class Document : DocumentBase

Конструкторы

Имя Описание
Document() Создает пустой документ Word.
Document(Stream) Открывает существующий документ из потока. Автоматически определяет формат файла.
Document(string) Открывает существующий документ из файла. Автоматически определяет формат файла.
Document(Stream, LoadOptions) Открывает существующий документ из потока. Позволяет указать дополнительные параметры, такие как пароль шифрования.
Document(string, LoadOptions) Открывает существующий документ из файла. Позволяет указать дополнительные параметры, такие как пароль шифрования.

Характеристики

Имя Описание
AttachedTemplate { get; set; } Получает или задает полный путь к шаблону, прикрепленному к документу.
AutomaticallyUpdateStyles { get; set; } Получает или задает флаг, указывающий, обновляются ли стили в документе в соответствии со стилями в прикрепленном шаблоне каждый раз, когда документ открывается в MS Word.
BackgroundShape { get; set; } Получает или задает форму фона документа. Может быть нулевым.
BuiltInDocumentProperties { get; } Возвращает коллекцию, которая представляет все встроенные свойства документа.
ChildNodes { get; } Получает все непосредственные дочерние узлы этого узла.
CompatibilityOptions { get; } Предоставляет доступ к параметрам совместимости документов (то есть к настройкам пользователя, введенным на Совместимость вкладка Опции диалоговое окно в Word).
Compliance { get; } Получает версию соответствия OOXML, определенную из содержимого загруженного документа. Имеет смысл только для документов OOXML.
Count { get; } Получает количество непосредственных дочерних элементов этого узла.
CustomDocumentProperties { get; } Возвращает коллекцию, которая представляет все настраиваемые свойства документа.
CustomNodeId { get; set; } Указывает идентификатор пользовательского узла.
CustomXmlParts { get; set; } Получает или задает набор пользовательских частей хранилища данных XML.
DefaultTabStop { get; set; } Получает или задает интервал (в пунктах) между позициями табуляции по умолчанию.
DigitalSignatures { get; } Получает коллекцию цифровых подписей для этого документа и результаты их проверки.
override Document { get; }
EndnoteOptions { get; } Предоставляет параметры, управляющие нумерацией и расположением концевых сносок в этом документе.
FieldOptions { get; } Получает FieldOptionsобъект, представляющий параметры для управления обработкой полей в документе.
FirstChild { get; } Получает первого потомка узла.
FirstSection { get; } Получает первый раздел в документе.
FontInfos { get; } Предоставляет доступ к свойствам шрифтов, используемых в этом документе.
FontSettings { get; set; } Получает или задает параметры шрифта документа.
FootnoteOptions { get; } Предоставляет параметры, управляющие нумерацией и расположением сносок в этом документе.
Frameset { get; } ВозвращаетFramesetinstance, если этот документ представляет собой страницу фреймов.
GlossaryDocument { get; set; } Получает или задает документ глоссария в этом документе или шаблоне. Глоссарий — это хранилище для записей автотекста, автозамены и стандартных блоков, определенных в документе.
GrammarChecked { get; set; } Возвращает истинный если документ проверен на грамматику.
HasChildNodes { get; } Возвращает true, если у этого узла есть дочерние узлы.
HasMacros { get; } Возвращает истинный если документ имеет проект VBA (макросы).
HasRevisions { get; } Возвращает истинный есть ли в документе отслеживаемые изменения.
HyphenationOptions { get; } Предоставляет доступ к параметрам переноса документа.
override IsComposite { get; } Возвращает true, так как этот узел может иметь дочерние узлы.
LastChild { get; } Получает последний дочерний элемент узла.
LastSection { get; } Получает последний раздел в документе.
LayoutOptions { get; } Получает МакетОпции объект, представляющий параметры для управления процессом компоновки этого документа.
Lists { get; } Предоставляет доступ к форматированию списка, используемому в документе.
MailMerge { get; } Возвращает MailMerge объект, представляющий функциональность слияния для документа.
MailMergeSettings { get; set; } Получает или задает объект, содержащий всю информацию о слиянии для документа.
NextSibling { get; } Получает узел, следующий сразу за этим узлом.
NodeChangingCallback { get; set; } Вызывается при вставке или удалении узла в документе.
override NodeType { get; } Возвращает NodeType.Document .
OriginalFileName { get; } Получает исходное имя файла документа.
OriginalLoadFormat { get; } Получает формат исходного документа, который был загружен в этот объект.
PackageCustomParts { get; set; } Получает или задает набор настраиваемых частей (произвольное содержимое), которые связаны с пакетом OOXML с помощью «неизвестных связей».
PageColor { get; set; } Получает или задает цвет страницы документа. Это свойство является упрощенной версиейBackgroundShape .
PageCount { get; } Получает количество страниц в документе, рассчитанное самой последней операцией макета страницы.
ParentNode { get; } Получает непосредственного родителя этого узла.
PreviousSibling { get; } Получает узел, непосредственно предшествующий этому узлу.
ProtectionType { get; } Получает текущий активный тип защиты документа.
Range { get; } Возвращает Диапазон объект, представляющий часть документа, содержащегося в этом узле.
RemovePersonalInformation { get; set; } Получает или устанавливает флаг, указывающий, что Microsoft Word удалит всю информацию о пользователе из комментариев, редакций и свойств документа при сохранении документа.
ResourceLoadingCallback { get; set; } Позволяет контролировать загрузку внешних ресурсов.
Revisions { get; } Получает коллекцию ревизий (отслеживаемых изменений), существующих в этом документе.
RevisionsView { get; set; } Получает или задает значение, указывающее, следует ли работать с исходной или исправленной версией документа.
Sections { get; } Возвращает коллекцию, представляющую все разделы документа.
ShadeFormData { get; set; } Указывает, следует ли включать серое затенение полей формы.
ShowGrammaticalErrors { get; set; } Указывает, отображать ли грамматические ошибки в этом документе.
ShowSpellingErrors { get; set; } Указывает, отображать ли орфографические ошибки в этом документе.
SpellingChecked { get; set; } Возвращает истинный если документ проверен на орфографию.
Styles { get; } Возвращает набор стилей, определенных в документе.
Theme { get; } ПолучаетTheme объект для этого документа.
TrackRevisions { get; set; } Истинный если изменения отслеживаются при редактировании этого документа в Microsoft Word.
Variables { get; } Возвращает набор переменных, добавленных в документ или шаблон.
VbaProject { get; set; } Получает или задаетVbaProject .
VersionsCount { get; } Получает количество версий документа, сохраненных в документе DOC.
ViewOptions { get; } Предоставляет параметры для управления отображением документа в Microsoft Word.
WarningCallback { get; set; } Вызывается во время различных процедур обработки документов при обнаружении проблемы, которая может привести к потере точности данных или форматирования.
Watermark { get; } Предоставляет доступ к водяному знаку документа.
WebExtensionTaskPanes { get; } Возвращает коллекцию, представляющую список надстроек области задач.
WriteProtection { get; } Предоставляет доступ к параметрам защиты документа от записи.

Методы

Имя Описание
override Accept(DocumentVisitor) Принимает посетителя.
AcceptAllRevisions() Принимает все отслеживаемые изменения в документе.
AppendChild(Node) Добавляет указанный узел в конец списка дочерних узлов для этого узла.
AppendDocument(Document, ImportFormatMode) Добавляет указанный документ в конец этого документа.
AppendDocument(Document, ImportFormatMode, ImportFormatOptions) Добавляет указанный документ в конец этого документа.
Cleanup() Удаляет неиспользуемые стили и списки из документа.
Cleanup(CleanupOptions) Удаляет из документа неиспользуемые стили и списки в зависимости от заданногоCleanupOptions .
Clone() Выполняет глубокую копиюDocument .
Clone(bool) Создает дубликат узла.
Compare(Document, string, DateTime) Сравнивает этот документ с другим документом, внося изменения в виде количества редакций и форматирования.Revision .
Compare(Document, string, DateTime, CompareOptions) Сравнивает этот документ с другим документом, внося изменения в виде количества редакций и форматирования.Revision . Позволяет указать параметры сравнения, используяCompareOptions .
CopyStylesFromTemplate(Document) Копирует стили из указанного шаблона в документ.
CopyStylesFromTemplate(string) Копирует стили из указанного шаблона в документ.
CreateNavigator() Зарезервировано для системного использования. IXPathNavigable.
EnsureMinimum() Если документ не содержит разделов, создается один раздел с одним абзацем.
ExpandTableStylesToDirectFormatting() Преобразует форматирование, указанное в стилях таблиц, в прямое форматирование таблиц в документе.
ExtractPages(int, int) ВозвращаетDocument объект, представляющий указанный диапазон страниц.
GetAncestor(NodeType) Получает первого предка указанногоNodeType .
GetAncestor(Type) Получает первого предка указанного типа объекта.
GetChild(NodeType, int, bool) Возвращает N-й дочерний узел, соответствующий указанному типу.
GetChildNodes(NodeType, bool) Возвращает динамическую коллекцию дочерних узлов, соответствующих указанному типу.
GetEnumerator() Обеспечивает поддержку для каждой итерации стиля над дочерними узлами этого узла.
GetPageInfo(int) Получает размер страницы, ориентацию и другую информацию о странице, которая может быть полезна для печати или рендеринга.
override GetText() Получает текст этого узла и всех его дочерних элементов.
ImportNode(Node, bool) Импортирует узел из другого документа в текущий документ.
ImportNode(Node, bool, ImportFormatMode) Импортирует узел из другого документа в текущий документ с возможностью управления форматированием.
IndexOf(Node) Возвращает индекс указанного дочернего узла в массиве дочерних узлов.
InsertAfter(Node, Node) Вставляет указанный узел сразу после указанного ссылочного узла.
InsertBefore(Node, Node) Вставляет указанный узел непосредственно перед указанным ссылочным узлом.
JoinRunsWithSameFormatting() Объединяет прогоны с одинаковым форматированием во всех абзацах документа.
NextPreOrder(Node) Получает следующий узел в соответствии с алгоритмом обхода дерева предварительного порядка.
NormalizeFieldTypes() Изменяет значения типа поляFieldType изFieldStart ,FieldSeparator ,FieldEnd во всем документе, чтобы они соответствовали типам полей, содержащимся в кодах полей.
PrependChild(Node) Добавляет указанный узел в начало списка дочерних узлов для этого узла.
PreviousPreOrder(Node) Получает предыдущий узел в соответствии с алгоритмом обхода дерева предварительного порядка.
Print() Печать всего документа на принтере по умолчанию.
Print(PrinterSettings) Печать документа в соответствии с заданными настройками принтера, с использованием стандартного (без пользовательского интерфейса) контроллера печати.
Print(string) Печать всего документа на указанном принтере, с использованием стандартного (без пользовательского интерфейса) контроллера печати.
Print(PrinterSettings, string) Печать документа в соответствии с указанными настройками принтера, с использованием стандартного (без пользовательского интерфейса) контроллера печати и имени документа.
Protect(ProtectionType) Защищает документ от изменений без изменения существующего пароля или назначает случайный пароль.
Protect(ProtectionType, string) Защищает документ от изменений и дополнительно устанавливает пароль защиты.
Remove() Удаляет себя из родителя.
RemoveAllChildren() Удаляет все дочерние узлы текущего узла.
RemoveChild(Node) Удаляет указанный дочерний узел.
RemoveExternalSchemaReferences() Удаляет ссылки на внешние XML-схемы из этого документа.
RemoveMacros() Удаляет все макросы (проект VBA), а также панели инструментов и настройки команд из документа.
RemoveSmartTags() Удаляет всеSmartTag узлы-потомки текущего узла.
RenderToScale(int, Graphics, float, float, float) Преобразует страницу документа вGraphics объект в указанном масштабе.
RenderToSize(int, Graphics, float, float, float, float) Преобразует страницу документа вGraphics объект до указанного размера.
Save(string) Сохраняет документ в файл. Автоматически определяет формат сохранения из расширения.
Save(Stream, SaveFormat) Сохраняет документ в поток, используя указанный формат.
Save(Stream, SaveOptions) Сохраняет документ в поток, используя указанные параметры сохранения.
Save(string, SaveFormat) Сохраняет документ в файл в указанном формате.
Save(string, SaveOptions) Сохраняет документ в файл, используя указанные параметры сохранения.
Save(HttpResponse, string, ContentDisposition, SaveOptions) Отправляет документ в браузер клиента.
SelectNodes(string) Выбирает список узлов, соответствующих выражению XPath.
SelectSingleNode(string) Выбирает первый узел, соответствующий выражению XPath.
StartTrackRevisions(string) Начинает автоматически отмечать все дальнейшие изменения, которые вы вносите в документ программно, как изменения версии.
StartTrackRevisions(string, DateTime) Начинает автоматически отмечать все дальнейшие изменения, которые вы вносите в документ программно, как изменения версии.
StopTrackRevisions() Останавливает автоматическую маркировку изменений документа как редакций.
ToString(SaveFormat) Экспортирует содержимое узла в строку в указанном формате.
ToString(SaveOptions) Экспортирует содержимое узла в строку, используя указанные параметры сохранения.
UnlinkFields() Разъединяет поля во всем документе.
Unprotect() Снимает защиту с документа независимо от пароля.
Unprotect(string) Снимает защиту с документа, если указан правильный пароль.
UpdateFields() Обновляет значения полей во всем документе.
UpdateListLabels() Обновляет метки списка для всех элементов списка в документе.
UpdatePageLayout() Перестраивает макет страницы документа.
UpdateThumbnail() ОбновленияThumbnail документа с параметрами по умолчанию.
UpdateThumbnail(ThumbnailGeneratingOptions) ОбновленияThumbnail документа по заданным параметрам.
UpdateWordCount() Обновляет свойства количества слов в документе.
UpdateWordCount(bool) Обновляет свойства количества слов в документе, опционально обновляетLines свойство.

Примечания

Документ является центральным объектом в библиотеке Aspose.Words.

Чтобы загрузить существующий документ в любой изLoadFormat форматы, передайте имя файла или поток в один из Документ конструкторы. Чтобы создать пустой документ, вызовите конструктор без параметров.

Используйте одну из перегрузок метода Save, чтобы сохранить документ в любом из каталогов .SaveFormat форматы.

Чтобы рисовать страницы документа непосредственно на Графика объект use RenderToScale или жеRenderToSize метод.

Для печати документа используйте один изPrintметоды.

MailMerge — это механизм отчетов Aspose.Words, который позволяет быстро и легко заполнять отчеты, разработанные в Microsoft Word, данными из различных источников данных. Данные могут быть из DataSet, DataTable, DataView, IDataReader или массива значений. MailMerge будет просматривать записи, найденные в источнике данных, и вставлять их в поля слияния почты в документе, увеличивая его по мере необходимости.

Документ хранит информацию по всему документу, такую какStyles , BuiltInDocumentProperties ,CustomDocumentProperties , списки и макросы. Большинство этих объектов доступны через соответствующие свойства Документ.

Документявляется корневым узлом дерева, которое содержит все остальные узлы документа. Дерево представляет собой шаблон проектирования Composite и во многом похож на XmlDocument. Содержимым документа можно свободно управлять программно:

  • Доступ к узлам документа можно получить через типизированные коллекции, напримерSections , ParagraphCollection и т.п.
  • Узлы документа могут быть выбраны по их типу узла с помощью GetChildNodes или используя запрос XPath сSelectNodes или жеSelectSingleNode.
  • Узлы содержимого могут быть добавлены или удалены из любого места документа с помощью InsertBefore ,InsertAfter , RemoveChild и методы other , предоставляемые базовым классомCompositeNode.
  • Атрибуты форматирования каждого узла можно изменить с помощью свойств этого узла.

Рассмотрите возможность использованияDocumentBuilder это упрощает задачу программного создания или заполнения дерева документов.

Документ может содержать толькоSection объекты.

В Microsoft Word действительный документ должен иметь хотя бы один раздел.

Примеры

Показывает, как выполнить слияние почты с данными из DataTable.

public void ExecuteDataTable()
{
    DataTable table = new DataTable("Test");
    table.Columns.Add("CustomerName");
    table.Columns.Add("Address");
    table.Rows.Add(new object[] { "Thomas Hardy", "120 Hanover Sq., London" });
    table.Rows.Add(new object[] { "Paolo Accorti", "Via Monte Bianco 34, Torino" });

    // Ниже приведены два способа использования DataTable в качестве источника данных для слияния.
    // 1 — использовать всю таблицу для слияния, чтобы создать один выходной документ слияния для каждой строки в таблице:
    Document doc = CreateSourceDocExecuteDataTable();

    doc.MailMerge.Execute(table);

    doc.Save(ArtifactsDir + "MailMerge.ExecuteDataTable.WholeTable.docx");

    // 2 - Используйте одну строку таблицы для создания одного выходного документа слияния почты:
    doc = CreateSourceDocExecuteDataTable();

    doc.MailMerge.Execute(table.Rows[1]);

    doc.Save(ArtifactsDir + "MailMerge.ExecuteDataTable.OneRow.docx");
}

/// <summary>
/// Создает исходный документ слияния.
/// </summary>
private static Document CreateSourceDocExecuteDataTable()
{
    Document doc = new Document();
    DocumentBuilder builder = new DocumentBuilder(doc);

    builder.InsertField(" MERGEFIELD CustomerName ");
    builder.InsertParagraph();
    builder.InsertField(" MERGEFIELD Address ");

    return doc;
}

Смотрите также