Сборка документов для C++

C++ SDK в виде оболочки для GroupDocs.Assembly Cloud API. Создавайте высоко кастомизированные отчеты, контракты, счета и многое другое непосредственно из ваших C++ приложений.

  • GroupDocs.Assembly Cloud SDK для cURL
  • GroupDocs.Assembly Cloud SDK для .NET
  • GroupDocs.Assembly Cloud SDK для Java
  • GroupDocs.Assembly Cloud SDK для Python
  • GroupDocs.Assembly Cloud SDK для PHP
  • GroupDocs.Assembly Cloud SDK для Ruby
  • GroupDocs.Assembly Cloud SDK для Node.js
  • GroupDocs.Assembly Cloud SDK для Go
  • GroupDocs.Assembly Cloud SDK для Swift
Начать бесплатную пробную версию

GroupDocs.Assembly Cloud SDK для C++ предоставляет высокоуровневую, кроссплатформенную оболочку вокруг Assembly Cloud REST API, позволяя разработчикам генерировать насыщенно форматированные документы непосредственно из своих C++ приложений. Решение строится на основе шаблонов — документов, которые содержат специальные плейсхолдеры и правила генерации — в сочетании с источниками данных (XML или JSON). Отправляя шаблон и данные в облако, сервис собирает конечный результат в нужном формате (DOCX, PDF, HTML и др.) и возвращает его мгновенно.

Почему стоит использовать Assembly Cloud?

  • Нулевая установка — вся тяжёлая работа выполняется в облаке; вашему C++ коду нужно только выполнять HTTP вызовы.
  • Широкая поддержка форматов — генерируйте Word, Excel, PowerPoint, PDF, OpenDocument, графику и многие другие форматы без дополнительных библиотек.
  • Расширенный синтаксис шаблонов — встраивайте изображения, диаграммы, штрихкоды, условные блоки, циклы, формулы и даже тела email прямо в шаблон.
  • Безопасность — связь защищена SSL/TLS и аутентифицирована с помощью личных ключей доступа, гарантируя, что конфиденциальные данные никогда не покидают безопасное облако.

Типичный рабочий процесс в C++

  1. Настройте SDK с вашим App SID и App Key.
  2. Загрузите шаблон (например, InvoiceTemplate.docx) в GroupDocs Cloud Storage с помощью эндпоинта UploadFile.
  3. Подготовьте параметры сборки, указывая путь к шаблону, источник данных (invoice.json или invoice.xml) и желаемый формат вывода.
  4. Вызовите AssembleDocument API — сервис объединит данные с шаблоном, вычислит все выражения и вернет собранный документ.
  5. Скачайте результат непосредственно из ответа API или через Storage API для дальнейшей обработки.

Такой подход позволяет создавать сложные, многостраничные отчеты, персонализированные письма (Mail Merge), счета, контракты и любые документы, совмещающие статическое содержимое с динамическими данными. Поскольку SDK легковесный и работает на любой ОС с поддержкой C++11 и cURL, вы можете интегрировать его в настольные приложения, серверные сервисы или контейнеризованные микросервисы с минимальными усилиями.

Возможности Assembly Cloud REST API

Генерация документов из шаблонов с помощью одного вызова API

Привязка источников данных (XML, JSON) с выражениями в стиле LINQ

Встраивание изображений, диаграмм и внешних документов в итоговый файл

Создание динамических таблиц и списков на основе массивов данных

Условные блоки содержимого (IF/ELSE) в шаблонах

Применение формул и последовательных вычислений при сборке

Генерация штрихкодов (QR, Code128 и др.) внутри документов

Безопасная передача данных через SSL/TLS и личные ключи доступа

Создание тел email и прикрепление сгенерированных документов на лету

Генерация документа на C++ через REST API

Ниже приведен пример типового рабочего процесса: настройка SDK, загрузка шаблона, установка параметров сборки и вызов Assemble для получения сформированного документа.

Шаги:

  1. Инициализируйте SDK с вашими App SID и App Key.
  2. Загрузите шаблон Word (Input1.docx) в GroupDocs Cloud Storage.
  3. Создайте TemplateFileInfo, указывающий на загруженный шаблон.
  4. Установите желаемый формат вывода (docx) и укажите источник данных (Input2.json).
  5. Вызовите assembleDocument для генерации итогового документа.
using namespace groupdocs::assembly;
using namespace groupdocs::assembly::cloud::api;

// 1. Настройка SDK с вашими учетными данными
auto config = std::make_shared<Configuration>(L"####################", L"####################");
auto assemblyApi = std::make_shared<AssemblyApi>(config);

// 2. Загрузка файла шаблона
auto fileName = L"Input1.docx";
auto requestFileContent = std::shared_ptr<std::istream>(
    new std::ifstream(std::filesystem::path(fileName), std::istream::binary));
std::shared_ptr<UploadFileRequest> uploadDocumentRequest(
    new UploadFileRequest(requestFileContent, std::make_shared<std::wstring>(fileName)));
assemblyApi->uploadFile(uploadDocumentRequest);

// 3. Подготовка параметров сборки
auto fileInfo = std::make_shared<TemplateFileInfo>();
fileInfo->setFilePath(fileName);

auto assembleOptions = std::make_shared<AssembleOptions>();
assembleOptions->setSaveFormat("docx");
assembleOptions->setReportData(std::filesystem::path(L"Input2.json"));   // источник данных
assembleOptions->setTemplateFileInfo(fileInfo);

// 4. Сборка документа
auto request = std::make_shared<AssembleDocumentRequest>(assembleOptions);
assemblyApi->assembleDocument(request);

Ресурсы поддержки и обучения

GroupDocs.Assembly Cloud также предлагает SDK для других языков:

  РУССКИЙ
8d45f93