Интегрируйте мощные возможности сборки документов в свои приложения Node с помощью GroupDocs.Assembly Cloud REST API.
Начать бесплатную пробную версиюGroupDocs.Assembly Cloud — это полностью управляемый сервис на базе REST, позволяющий разработчикам создавать документы с богатым форматированием, готовые к печати, на основе повторно используемых шаблонов и внешних источников данных.
Платформа поддерживает широкий спектр исходных и целевых форматов — от классических файлов Microsoft Office (DOCX, XLSX, PPTX) до PDF, HTML, OpenDocument и множества графических форматов, что позволяет создавать договоры, счета-фактуры, отчёты, маркетинговые брошюры и любые другие документы без установки стороннего программного обеспечения на ваши серверы. Вся сложная работа — анализ шаблонов, привязка данных, рендеринг изображений, генерация штрихкодов, оценка формул и конвертация файлов — выполняется в облаке, что обеспечивает согласованность результатов в различных операционных системах и снижает затраты на инфраструктуру.
Зачем использовать Node.js SDK?
Типичный рабочий процесс в приложении Node.js
Подготовьте шаблон (DOCX, PPTX и т. д.), содержащий поля-заполнители и дополнительные программные конструкции, такие как условные блоки, циклы или теги штрихкодов.
Создайте источник данных в формате XML или JSON, предоставляющий значения для объединения в шаблон.
Загрузите шаблон в облачное хранилище GroupDocs с помощью метода uploadFile SDK.
Настройте AssembleOptions — укажите путь к шаблону, источник данных, желаемый формат вывода (PDF, DOCX, HTML и т. д.) и любые дополнительные параметры (например, генерацию штрихкода, цвет фона).
Вызовите assembleDocument — SDK отправит один HTTP-запрос, который запустит процесс сборки на сервере.
Получить собранный файл в виде массива байтов, сохранить его локально или передать потоком непосредственно клиенту.
Следующий пример (см. раздел Дополнительные функции) демонстрирует каждый из этих шагов в компактном, готовом к использованию фрагменте кода.
В приведенном ниже фрагменте кода показан полный процесс: загрузка шаблона, чтение JSON-файла данных, настройка запроса на сборку и получение собранного документа.
Шаги
Загрузите шаблон DOCX в облачное хранилище GroupDocs.
Считайте JSON-файл данных, содержащий значения для объединения.
Настройте AssembleOptions — выберите формат вывода и привяжите данные.
Вызовите assembleDocument для создания отчета.
Сохраните возвращенный массив байтов в формате PDF (или в любом поддерживаемом формате).
// Замените на SID и ключ приложения вашего приложения
const { AssemblyApi, AssembleDocumentRequest, AssembleOptions, TemplateFileInfo, model } = require("groupdocs-assembly-cloud");
const fs = require("fs");
const path = require("path");
// Заполнитель авторизации
const assemblyApi = new AssemblyApi(".#-.#-.#-.#-.#", "......");
// 1️⃣ Загрузить файл шаблона
const templatePath = "Input1.docx";
const uploadRequest = new model.UploadFileRequest({
fileContent: fs.createReadStream(templatePath),
path: templatePath
});
await assemblyApi.uploadFile(uploadRequest);
// 2️⃣ Чтение источника данных (JSON)
const dataPath = "Input2.docx";
const reportData = fs.readFileSync(dataPath, "utf8");
// 3️⃣ Задать параметры сборки
const assembleOptions = new AssembleOptions({
saveFormat: "pdf",
reportData: reportData,
templateFileInfo: new TemplateFileInfo({ filePath: templatePath })
});
// 4️⃣ Создать и отправить запрос на сборку
const request = new AssembleDocumentRequest({ assembleOptions });
const result = await assemblyApi.assembleDocument(request);
// 5️⃣ Сохранение полученного документа
const outputPath = path.join(__dirname, "GeneratedReport.pdf");
fs.writeFileSync(outputPath, result.body);
console.log("Отчёт сформирован успешно:", outputPath);