Сценарии использования для Aspose.Words FOSS for .NET
Aspose.Words FOSS для .NET — это чистая библиотека C# для создания, редактирования и конвертации документов Word без установленного Microsoft Word. Приведённые ниже сценарии использования отражают то, что действительно поддерживает эта открытая версия, построенная вокруг Document and DocumentBuilder. Она не включает в себя макет страниц, рендеринг или экспорт в PDF/изображения; смотрите FAQ and Troubleshooting страницы для полного списка того, что исключено из этой версии.
Генерация документов на сервере
Создавайте отчёты, письма и контракты из работающего сервиса без установки Office и без COM-автоматизации — естественное решение для Docker-контейнеров или облачных функций. Сформируйте Document, управляйте им с помощью DocumentBuilder и сохраните результат:
using Aspose.Words;
Document doc = new Document();
DocumentBuilder builder = new DocumentBuilder(doc);
builder.Writeln("Hello, Aspose.Words FOSS!");
doc.Save("output.docx");Поскольку библиотека ориентирована на .NET Standard 2.0 без нативных зависимостей, один и тот же код работает без изменений на хостах Windows, Linux и macOS.
Автоматизация документов на основе шаблонов
Откройте существующий шаблон DOCX, переместите курсор построителя к именованной закладке и запишите новое содержимое в эту позицию — распространённый приём для заполнения контрактов, писем или счетов по фиксированному макету:
using Aspose.Words;
Document doc = new Document("template.docx");
DocumentBuilder builder = new DocumentBuilder(doc);
builder.MoveToBookmark("CustomerName");
builder.Write("Acme Corp");
doc.Save("output.docx");DocumentBuilder также предоставляет MoveToSection(), MoveToParagraph() и MoveToStructuredDocumentTag() для обращения к другим частям шаблона, а также Document.AppendDocument() / NodeImporter для объединения содержимого, полученного из нескольких исходных документов, в один выходной файл.
Конвертация форматов между вариантами DOCX, Markdown и простым текстом
Загрузите документ в одном из поддерживаемых форматов и сохраните его в другом — DOCX, DOCM, DOTX, DOTM и Flat OPC используют один и тот же читатель/писатель OOXML, а Markdown и обычный текст поддерживаются в обоих направлениях:
using Aspose.Words;
Document doc = new Document("report.docx");
doc.Save("report.md");Тот же подход работает в обратном направлении — загрузите файл .md и сохраните его как .docx — это удобно для преобразования документации, написанной в Markdown, в распространяемый файл Word, или для передачи содержимого DOCX в конвейер статического сайта, основанный на Markdown.
Извлечение текста для поиска и индексации
Извлеките чистый текст из документа для поискового индекса, конвейера текстового анализа или быстрой предварительной версии содержимого, без необходимости рендерить или открывать файл в Word:
using Aspose.Words;
Document doc = new Document("contract.docx");
string text = doc.GetText();GetText() доступен на Document и на отдельных узлах (CompositeNode.GetText(), Node.GetText(), Row.GetText() и аналогичных), поэтому вы можете извлекать текст из всего документа или из конкретной его части.
Пакетная обработка документов
Примените ту же последовательность загрузка-модификация-сохранение к каталогу файлов в едином скрипте — например, преобразуя всю папку файлов DOCX в Markdown:
using Aspose.Words;
using System.IO;
foreach (string path in Directory.GetFiles("incoming", "*.docx"))
{
Document doc = new Document(path);
doc.Save(Path.ChangeExtension(path, ".md"));
}Каждый файл загружается, конвертируется и сохраняется независимо, поэтому тот же цикл можно адаптировать к любой поддерживаемой комбинации форматов источника и назначения.