C++ SDK как оболочка для API GroupDocs.Assembly Cloud. Создавайте настраиваемые отчёты, контракты, счета и многое другое непосредственно из приложений C++.
Начать бесплатную пробную версиюGroupDocs.Assembly Cloud SDK для C++ предоставляет высокоуровневую кроссплатформенную оболочку для Assembly Cloud REST API, позволяя разработчикам создавать документы с богатым форматированием непосредственно из своих C++-приложений. Решение построено на шаблонах — документах, содержащих специальные поля-заполнители и правила генерации, — в сочетании с источниками данных (XML или JSON). Отправляя шаблон и данные в облако, сервис собирает конечный результат в нужном формате (DOCX, PDF, HTML и т. д.) и мгновенно возвращает его.
Зачем использовать Assembly Cloud?
Типичный рабочий процесс на C++
Настройте SDK, используя идентификатор SID и ключ приложения.
Загрузите шаблон (например, InvoiceTemplate.docx
) в облачное хранилище GroupDocs, используя конечную точку UploadFile
.
Подготовьте параметры сборки, указав путь к шаблону, источник данных (invoice.json
или invoice.xml
) и желаемый формат вывода. 4. Вызовите API AssembleDocument — сервис объединяет данные с шаблоном, оценивает все выражения и возвращает собранный документ.
Загрузите результат непосредственно из ответа API или через API хранилища для дальнейшей обработки.
Этот подход позволяет создавать сложные многостраничные отчеты, персонализированные письма (Mail Merge), счета-фактуры, контракты и любые документы, сочетающие статический контент с динамическими данными. Поскольку SDK легковесен и работает на любой ОС, поддерживающей C++11 и cURL, вы можете интегрировать его в настольные приложения, серверные службы или контейнерные микросервисы с минимальными усилиями.
В примере ниже показан типичный рабочий процесс: настройка SDK, загрузка шаблона, настройка параметров сборки и вызов конечной точки Assemble для получения сгенерированного документа.
Шаги:
Input1.docx
) в облачное хранилище GroupDocs.TemplateFileInfo
, указывающий на загруженный шаблон.docx
) и укажите источник данных (Input2.json
).assembleDocument
для генерации итогового документа.using namespace groupdocs::assembly;
using namespace groupdocs::assembly::cloud::api;
// 1. Configure SDK with your credentials
auto config = std::make_shared<Configuration>(L"......##", L"......##");
auto assemblyApi = std::make_shared<AssemblyApi>(config);
// 2. Upload template file
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. Prepare assembly options
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")); // data source
assembleOptions->setTemplateFileInfo(fileInfo);
// 4. Assemble document
auto request = std::make_shared<AssembleDocumentRequest>(assembleOptions);
assemblyApi->assembleDocument(request);