GroupDocs.Assembly Cloud هي خدمة تجميع مستندات مُدارة بالكامل ومبنية على REST، تتيح للمطورين إنشاء تقارير، عقود، فواتير، مقترحات، وأي نوع آخر من المستندات ذات التنسيق الغني مباشرةً من تطبيقات Swift. تعمل الخدمة فوق GroupDocs Cloud Storage – حيث تُرفع القوالب والبيانات إلى السحابة، ويعالج محرك التجميع هذه، وتُعاد المستندات المكتملة إلى العميل دون الحاجة إلى أي تثبيتات محلية لـ Office. هذا يُزيل عبء صيانة المكتبات الخارجية، يقلل من حمل المعالجة على الخادم، ويضمن توفر أحدث دعم الصيغ (DOCX، PDF، PPTX، XLSX، HTML، إلخ) دائمًا.
مع Swift SDK يتكامل سير العمل بالكامل بشكل طبيعي مع دورة التطوير النموذجية iOS/macOS:
{{Customer.Name}}) وقواعد توليد اختيارية مكتوبة بصيغة تشبه LINQ.يقوم SDK بتجريد جميع تفاصيل HTTP – فأنت بحاجة فقط إلى توفير App SID وApp Key (رموز وصول شخصية). جميع الاتصالات مشفّرة باستخدام SSL/TLS، وتعامل الأخطاء يتبع رموز الحالة القياسية لـ HTTP، وتلتزم الخدمة بمعايير الأمان على مستوى الصناعة. نظرًا لأن المعالجة تُجرى في السحابة، يعمل نفس كود Swift على iPhone و iPad و Mac أو أي منصة أخرى يمكنها تنفيذ كود Swift وإجراء طلبات الشبكة.
توفر علامات التبويب التالية نظرة مختصرة على الميزات المدعومة من قبل Assembly Cloud لـ Swift، القائمة الكاملة لصيغ المستندات، وأنظمة التشغيل، وأدوات التطوير المتوافقة مع SDK.
المقتطف أدناه يوضح كيفية إنشاء تقرير باستخدام Assembly Cloud SDK لـ Swift. يقوم بتحميل قالب، قراءة ملف البيانات، تكوين خيارات التجميع واستدعاء API.
الخطوات
AssemblyApi باستخدام معرف التطبيق App SID وApp Key.TemplateFileInfo يشير إلى القالب المرفوع.AssembleOptions باستخدام القالب والبيانات والتنسيق.assembleDocument والحصول على الملف المجمع.import GroupDocsAssemblyCloud
let assemblyApi = AssemblyApi(appSid: "####################", appKey: "####################")
let fileName = "Input1.docx"
let dataFile = "Input2.docx"
// Upload template
let requestFileContent = InputStream(url: URL(string: fileName)!)!
let uploadDocumentRequest = UploadFileRequest(fileContent: requestFileContent, path: fileName)
_ = try assemblyApi.uploadFile(request: uploadDocumentRequest)
// Prepare template info
let templateFileInfo = TemplateFileInfo()
templateFileInfo.setFilePath(filePath: fileName)
// Load data
let reportData = try String(contentsOfFile: dataFile, encoding: .utf8)
// Assemble options
let assembleOptions = AssembleOptions()
assembleOptions.setTemplateFileInfo(templateFileInfo: templateFileInfo)
assembleOptions.setSaveFormat(saveFormat: "docx")
assembleOptions.setReportData(reportData: reportData)
// Execute assembly
let request = AssembleDocumentRequest(assembleOptions: assembleOptions)
let result = try assemblyApi.assembleDocument(request: request)