REST API と Ruby Cloud SDK を使用して、テンプレートとデータ ソースからドキュメントを組み立て、結合、および差し込み印刷します。
無料トライアルを開始GroupDocs.Assembly Cloud は、Ruby アプリケーションから高度にカスタマイズされたドキュメントを直接作成できる、フルマネージドの REST ベースサービスです。 このプラットフォームはテンプレートとデータのモデルで動作します。特別なプレースホルダーフィールドとプログラム可能な構造を含むテンプレートドキュメント(Word、Excel、PowerPoint、PDF、HTML など)を設計します。実行時に XML または JSON 形式のデータソースを提供し、LINQ スタイルの式構文を使用してデータをテンプレートにバインドすると、クラウドサービスが必要な形式で最終ドキュメントを組み立てます。
このアプローチにより、ローカルの Office インストール、サードパーティ製ライブラリ、複雑なレンダリングエンジンは不要になります。すべての処理は、安全な GroupDocs データセンターで実行されます。差し込み印刷、動的テーブル、条件付きコンテンツ、バーコード生成、画像とグラフの挿入、そして豊富な書式設定オプションが組み込まれています。このサービスは、SSL/TLS 暗号化 通信、認証用の個人アクセスキー、ロールベースの権限も提供し、データの安全性を確保します。
. SDK を使用した Ruby ワークフロー
gem install groupdocs_assembly_cloud)。app_sid と api_key を使用して SDK を構成 します。UploadFile エンドポイントを介して、テンプレート ファイルを GroupDocs Cloud Storage にアップロード します。AssembleOptions オブジェクトを準備 します。assemble_document を呼び出し ます。API はアセンブルされたドキュメントを返します。このドキュメントは直接ダウンロードすることも、Cloud Storage に保存することもできます。このシンプルなシーケンスを使用することで、契約書、請求書、提案書、出荷報告書、個人宛名レターなど、ビジネスクリティカルなあらゆる文書をオンデマンドで生成できます。単一のリクエストから、差し込み印刷機能を使った大規模なバッチ処理まで、幅広い処理が可能です。
Ruby SDK には、ストレージ操作、エラー処理、リクエストタイムアウトのカスタマイズのためのヘルパークラスも用意されており、Rails、Sinatra、その他の Ruby ベースのサービスとのシームレスな統合を実現します。
以下のスニペットは、Assembly Cloud Ruby SDK を使用してドキュメントを生成する方法を示しています。実行する手順は次のとおりです。
AssembleOptions(テンプレート、出力形式、データソース)を定義します。assemble_document を呼び出して、アセンブルされたファイルを取得します。require_relative '../lib/groupdocs_assembly_cloud'
GroupDocsAssemblyCloud.configure do |config|
config.client_data['app_sid'] = '.#-.#-.#-.#-.#'
config.client_data['api_key'] = '......'
終了
@assembly_api = AssemblyApi.new
file_name = 'Input1.docx'
data_file = 'Input2.docx'
request_file_content = File.open(file_name)
upload_document_request = UploadFileRequest.new(
file_content: request_file_content, path: file_name)
@assembly_api.upload_file(upload_document_request)
template_file_info = TemplateFileInfo.new(:FilePath => file_name)
assemble_options = AssembleOptions.new(
:TemplateFileInfo => template_file_info,
:SaveFormat => "docx",
:ReportData => File.open(data_file, 'rb') { |f| f.read })
request = AssembleDocumentRequest.new assemble_options
@assembly_api.assemble_document request