GroupDocs.Assembly Cloud는 완전 관리형이며 REST 기반 문서 조립 서비스로, 개발자가 Swift 애플리케이션에서 직접 풍부하게 서식이 지정된 보고서, 계약서, 청구서, 제안서 및 기타 모든 유형의 문서를 생성할 수 있게 합니다. 이 서비스는 GroupDocs Cloud Storage 위에서 동작합니다 – 템플릿과 데이터가 클라우드에 업로드되고, 조립 엔진이 이를 처리한 뒤 완성된 문서가 로컬 Office 설치 없이 클라이언트에 반환됩니다. 이를 통해 서드파티 라이브러리 유지 관리 비용이 사라지고, 서버 측 처리 부하가 감소하며, 최신 포맷 지원(DOCX, PDF, PPTX, XLSX, HTML 등)이 항상 제공됩니다.
Swift SDK을 사용하면 전체 워크플로가 일반적인 iOS/macOS 개발 주기에 자연스럽게 맞춰집니다:
{{Customer.Name}})와 LINQ 스타일 구문으로 작성된 선택적 생성 규칙을 포함하는 Word, Excel, PowerPoint 또는 지원되는 기타 형식.SDK은 모든 HTTP 세부 정보를 추상화합니다 – App SID와 App Key(개인 액세스 토큰)만 제공하면 됩니다. 모든 통신은 SSL/TLS으로 암호화되며, 오류 처리는 표준 HTTP 상태 코드를 따르고, 서비스는 업계 수준의 보안 표준을 준수합니다. 처리가 클라우드에서 수행되기 때문에 동일한 Swift 코드는 iPhone, iPad, Mac 또는 Swift 코드를 실행하고 네트워크 요청을 수행할 수 있는 모든 플랫폼에서 작동합니다.
다음 탭에서는 Swift용 Assembly Cloud가 지원하는 기능 개요, 문서 포맷 전체 목록, 그리고 SDK와 호환되는 운영 체제 및 개발 도구를 간략히 보여줍니다.
아래 스니펫은 Swift용 Assembly Cloud SDK를 사용하여 보고서를 생성하는 방법을 보여줍니다. 템플릿을 업로드하고, 데이터 파일을 읽으며, 어셈블리 옵션을 구성하고 API을 호출합니다.
단계
AssemblyApi을 초기화합니다.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)