
Вы ищете решение .NET Word Automation для создания и обработки текстовых документов на C#? Вы хотите программно создавать, редактировать/изменять и преобразовывать документы Word, не используя MS Office? Давайте попробуем Aspose.Words for .NET API, который предоставляет полный набор функций для создания документов MS Word (.doc, .docx и т. д.) с использованием C# в ваших приложениях .NET.
Автоматизация документов MS Word и создание отчетов пользуются большим спросом у предприятий. Aspose.Words for .NET — это комплексное и многофункциональное решение для автоматизации Word для создания, редактирования или анализа документов Word в таких случаях. В этой статье рассматриваются все основные функции, необходимые для создания документов Word и управления ими программными средствами с помощью C#. Прочитав эту статью, вы сможете:
- Создайте документ Word (.doc, .docx) с помощью C#
- Редактировать или изменять документ Word с помощью C#
- Преобразование документа Word с помощью C#
- Разобрать документ Word с помощью C#
Создание документов Word — C# Word Automation API
Aspose.Words для .NET DLL можно скачать здесь. Другой вариант — установить его через диспетчер пакетов NuGet или консоль диспетчера пакетов в Visual Studio.
Использование диспетчера пакетов NuGet

Использование консоли диспетчера пакетов
PM> Install-Package Aspose.Words
Создайте документ Word с помощью C#
Давайте начнем наше путешествие с создания нового документа Word с помощью Aspose.Words для .NET. Класс DocumentBuilder API содержит все методы и свойства для создания документов Word с нуля. В сочетании с классом Document DocumentBuilder поддерживает вставку таких элементов, как текст/абзацы, флажки, таблицы, списки, изображения и другие объекты, которые могут содержаться в документе Word. Кроме того, вы можете указать шрифт и другие параметры форматирования, используя этот класс.
Ниже приведены шаги для создания документа Word с использованием класса DocumentBuilder.
- Создайте новый объект документа.
- Создайте новый объект DocumentBuilder и инициализируйте его с помощью объекта Document.
- Вставка/запись элементов с помощью объекта DocumentBuilder.
- Сохраните документ методом Document.Save.
В следующем примере кода показано, как создать документ Word DOCX с помощью C#.
Document doc = new Document();
DocumentBuilder builder = new DocumentBuilder(doc);
// Укажите форматирование шрифта
Font font = builder.Font;
font.Size = 32;
font.Bold = true;
font.Color = System.Drawing.Color.Black;
font.Name = "Arial";
font.Underline = Underline.Single;
// Вставить текст
builder.Writeln("This is the first page.");
builder.Writeln();
// Изменить форматирование следующих элементов.
font.Underline = Underline.None;
font.Size = 10;
font.Color = System.Drawing.Color.Blue;
builder.Writeln("This following is a table");
// Вставить таблицу
Table table = builder.StartTable();
// Вставить ячейку
builder.InsertCell();
// Используйте фиксированную ширину столбцов.
table.AutoFit(AutoFitBehavior.AutoFitToContents);
builder.CellFormat.VerticalAlignment = CellVerticalAlignment.Center;
builder.Write("This is row 1 cell 1");
// Вставить ячейку
builder.InsertCell();
builder.Write("This is row 1 cell 2");
builder.EndRow();
builder.InsertCell();
builder.Write("This is row 2 cell 1");
builder.InsertCell();
builder.Write("This is row 2 cell 2");
builder.EndRow();
builder.EndTable();
builder.Writeln();
// Вставить изображение
builder.InsertImage("image.png");
// Вставить разрыв страницы
builder.InsertBreak(BreakType.PageBreak);
// все элементы после разрыва страницы будут вставлены на следующую страницу.
// Сохраните документ
doc.Save("Document.docx");
Ниже приведен документ, который мы получаем после выполнения приведенного выше кода.

Посетите эти статьи, чтобы узнать больше об элементах, которые можно добавить в документ Word с помощью Aspose.Words для .NET.
Редактировать документ Word в C#
Вы также можете редактировать или изменять существующие документы Word, используя Aspose.Words для .NET. Классы объектной модели документа Aspose.Words позволяют вам получать доступ и изменять элементы документа, а также их форматирование. DOM на самом деле является представлением документа в памяти. Чтобы понять представление документа в виде DOM, см. Обзор DOM.
Давайте теперь посмотрим, как редактировать существующий элемент в документе Word. Предположим, нам нужно обновить текст «Это первая страница». в документе, который мы недавно создали. Поскольку это первый абзац в первом разделе документа, мы можем получить к нему доступ, указав индекс первого раздела и первого абзаца. В следующем примере кода показано, как изменить абзац в документе Word с помощью C#.
// Загрузить документ
Document doc = new Document("Document.docx");
DocumentBuilder builder = new DocumentBuilder(doc);
// Доступ к абзацу
var paragraph=doc.Sections[0].Body.Paragraphs[0].Runs[0];
paragraph.Text = "This is updated text";
// Сохраните документ
doc.Save("Document_updated.docx");
Ниже приведен обновленный документ Word.

Преобразование документа Word в другие форматы на С#
Наряду с созданием и управлением документами Word Aspose.Words для .NET также позволяет преобразовывать документ в другие форматы, включая (но не ограничиваясь ими) PDF, XPS, EPUB, HTML и форматы изображений, такие как BMP, PNG или JPEG. В следующем примере кода показано, как преобразовать документ Word в PDF на C#.
Document doc = new Document("word.docx");
// Обеспечение совместимости PDFSaveOption с PDF17
PdfSaveOptions options = new PdfSaveOptions();
options.Compliance = PdfCompliance.Pdf17;
// Преобразование Word в PDF
doc.Save("output.pdf", options);
Посетите эту статью, чтобы узнать, как преобразовать документ Word в другие форматы.
Разобрать документ Word на C#
Вы также можете проанализировать документ Word, извлекая его содержимое как обычный текст. В следующем примере кода показано, как извлечь текст из документа Word и сохранить его в файл .txt.
// Загрузите документ с диска.
Document doc = new Document("document.docx");
// Сохранить как обычный текст
doc.Save("output.txt");
Вывод
В этой статье вы увидели, как создавать или редактировать документы MS Word DOC/DOCX с помощью C#. Кроме того, вы узнали, как программно преобразовывать или анализировать документы MS Word. Посетите документацию Aspose.Words для .NET, чтобы получить полное руководство разработчика. Если вас что-то смущает, сообщите нам об этом через наш форум.
Статьи по Теме
- Преобразование документов Word в PDF с помощью C# - A complete guide.