قابلیتهای قدرتمند ترکیب اسناد را در برنامههای Node خود با استفاده از GroupDocs.Assembly Cloud REST API یکپارچه کنید.
آزمایش رایگان را شروع کنیدGroupDocs.Assembly Cloud یک سرویس کاملاً مدیریتشده مبتنی بر REST است که به توسعهدهندگان امکان میدهد اسناد با قالببندی غنی و آماده چاپ را از قالبهای قابل استفاده مجدد و منابع داده خارجی ایجاد کنند.
این پلتفرم از طیف وسیعی از فرمتهای منبع و مقصد پشتیبانی میکند – از فایلهای کلاسیک Microsoft Office (DOCX، XLSX، PPTX) تا PDF، HTML، OpenDocument و بسیاری از فرمتهای گرافیکی – که به شما امکان میدهد قراردادها، فاکتورها، گزارشها، بروشورهای بازاریابی یا هر سند سفارشی دیگری را بدون نصب هیچ نرمافزار شخص ثالثی بر روی سرورهای خود تولید کنید. تمام پردازشهای سنگین – تجزیه قالب، بایندینگ داده، رندر تصویر، تولید بارکد، ارزیابی فرمول و تبدیل فایل – در ابر انجام میشود، که نتایج سازگار را در تمام سیستمعاملها تضمین کرده و هزینههای زیرساخت را کاهش میدهد.
چرا از Node.js SDK استفاده کنید؟
گردش کار معمول در یک برنامه Node.js
uploadFile سرویس SDK.AssembleOptions را پیکربندی کنید – مسیر قالب، منبع داده، فرمت خروجی مورد نظر (PDF، DOCX، HTML، …) و هر تنظیمات اضافی (مانند تولید بارکد، رنگ پسزمینه) را مشخص کنید.assembleDocument را فراخوانی کنید – SDK یک درخواست تکتکه HTTP ارسال میکند که فرآیند ترکیب را در سرور فعال میسازد.مثال زیر (نمایش داده شده در بخش More Feature) هر یک از این مراحل را در یک قطعه کد فشرده و آماده برای تولید نشان میدهد.
قطعه کد زیر یک جریان کامل را نشان میدهد: قالبی را بارگذاری کنید، فایل دادهٔ JSON را بخوانید، درخواست ترکیب را پیکربندی کنید و سند ترکیبشده را دریافت کنید.
مراحل
AssembleOptions – قالب خروجی را انتخاب کنید و دادهها را بایند کنید.assembleDocument را برای تولید گزارش فراخوانی کنید.// Replace with your App SID and App Key
const { AssemblyApi, AssembleDocumentRequest, AssembleOptions, TemplateFileInfo, model } = require("groupdocs-assembly-cloud");
const fs = require("fs");
const path = require("path");
// Authorization placeholder
const assemblyApi = new AssemblyApi("####-####-####-####-####", "##################");
// 1️⃣ Upload the template file
const templatePath = "Input1.docx";
const uploadRequest = new model.UploadFileRequest({
fileContent: fs.createReadStream(templatePath),
path: templatePath
});
await assemblyApi.uploadFile(uploadRequest);
// 2️⃣ Read the data source (JSON)
const dataPath = "Input2.docx";
const reportData = fs.readFileSync(dataPath, "utf8");
// 3️⃣ Set assembly options
const assembleOptions = new AssembleOptions({
saveFormat: "pdf",
reportData: reportData,
templateFileInfo: new TemplateFileInfo({ filePath: templatePath })
});
// 4️⃣ Create and send the assemble request
const request = new AssembleDocumentRequest({ assembleOptions });
const result = await assemblyApi.assembleDocument(request);
// 5️⃣ Save the resulting document
const outputPath = path.join(__dirname, "GeneratedReport.pdf");
fs.writeFileSync(outputPath, result.body);
console.log("Report generated successfully:", outputPath);