مونتاژ سند برای C++

کیت توسعه C++ به عنوان یک پوشش برای 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، گرافیک‌ها و بسیاری فرمت‌های دیگر بدون نیاز به کتابخانه‌های اضافی.
  • نحو پیشرفته قالب – جاسازی تصاویر، نمودارها، بارکدها، بخش‌های شرطی، حلقه‌ها، فرمول‌ها و حتی بدنه ایمیل‌ها به طور مستقیم در قالب.
  • امنیت – ارتباط از طریق SSL/TLS محافظت شده و با کلیدهای دسترسی شخصی احراز هویت می‌شود، که اطمینان حاصل می‌کند داده‌های حساس هرگز از محیط امن ابر خارج نشوند.

روند کاری معمول در C++

  1. پیکربندی کیت توسعه با App SID و App Key خود.
  2. بارگذاری قالب (مثلاً InvoiceTemplate.docx) به GroupDocs Cloud Storage با استفاده از نقطه پایان UploadFile.
  3. آماده‌سازی گزینه‌های مونتاژ، مشخص کردن مسیر قالب، منبع داده (invoice.json یا invoice.xml)، و قالب خروجی مورد نظر.
  4. فراخوانی API AssembleDocument – سرویس داده‌ها را با قالب ادغام می‌کند، تمام عبارات را ارزیابی کرده و سند مونتاژ شده را باز می‌گرداند.
  5. دانلود نتیجه به صورت مستقیم از پاسخ API یا از طریق Storage API برای پردازش‌های بعدی.

این رویکرد امکان ایجاد گزارش‌های پیچیده چند صفحه‌ای، نامه‌های شخصی‌سازی شده (ادغام نامه)، فاکتورها، قراردادها و هر سندی که ترکیبی از محتوای ایستا و داده‌های پویا باشد را فراهم می‌کند. از آنجایی که SDK سبک است و روی هر سیستم عاملی که C++11 و cURL را پشتیبانی می‌کند کار می‌کند، می‌توانید آن را به راحتی در برنامه‌های دسکتاپ، سرویس‌های سمت سرور یا میکروسرویس‌های کانتینر شده ادغام کنید.

ویژگی‌های Assembly Cloud REST API

تولید اسناد از قالب‌ها با استفاده از یک فراخوانی API

پیوند دادن منابع داده (XML، JSON) با عبارات به سبک LINQ

جاسازی تصاویر، نمودارها و اسناد خارجی در خروجی

ایجاد جداول و لیست‌های پویا از داده‌های آرایه

بخش‌های محتوایی شرطی (IF/ELSE) در قالب‌ها

اعمال فرمول‌ها و محاسبات متوالی در حین مونتاژ

تولید بارکدها (QR، Code128 و غیره) داخل اسناد

انتقال امن داده‌ها از طریق SSL/TLS و کلیدهای دسترسی شخصی

ساخت بدنه ایمیل و پیوست خودکار اسناد تولید شده

تولید سند در C++ از طریق REST API

مثال زیر روند کاری معمول را نشان می‌دهد: پیکربندی کیت توسعه، بارگذاری قالب، تنظیم گزینه‌های مونتاژ و فراخوانی نقطه پایان Assemble برای دریافت سند تولید شده.

مراحل:

  1. کیت توسعه را با 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);

Support and Learning Resources

GroupDocs.Assembly Cloud همچنین کیت‌های توسعه برای زبان‌های دیگر ارائه می‌دهد:

  فارسی
8d45f93