Генерация документов с помощью Ruby SDK

REST API и Ruby Cloud SDK для сборки, объединения и рассылки документов по шаблонам и источникам данных.

  • GroupDocs.Assembly Cloud for cURL
  • GroupDocs.Assembly Cloud SDK for .NET
  • GroupDocs.Assembly Cloud SDK for Java
  • GroupDocs.Assembly Cloud SDK for PHP
  • GroupDocs.Assembly Cloud SDK for Python
  • GroupDocs.Assembly Cloud SDK for Node.js
  • GroupDocs.Assembly Cloud SDK for Go
  • GroupDocs.Assembly Cloud SDK for C++
  • GroupDocs.Assembly Cloud SDK for Swift
Начать бесплатную пробную версию

GroupDocs.Assembly Cloud — это полностью управляемый сервис на базе REST, позволяющий создавать документы с высокой степенью персонализации непосредственно из приложений Ruby. Платформа работает по модели «шаблон и данные»: вы разрабатываете шаблон документа (Word, Excel, PowerPoint, PDF, HTML и т. д.), содержащий специальные поля-заполнители и программируемые конструкции. Во время выполнения вы предоставляете источник данных в формате XML или JSON, привязываете данные к шаблону с помощью синтаксиса выражений в стиле LINQ, а облачный сервис собирает итоговый документ в нужном вам формате.

Такой подход устраняет необходимость в локальных установках Office, сторонних библиотеках или сложных механизмах рендеринга — вся сложная работа выполняется в безопасном центре обработки данных GroupDocs. Вы получаете встроенную поддержку слияния, динамических таблиц, условного содержимого, генерации штрихкодов, вставки изображений и диаграмм, а также широкий набор возможностей форматирования. Сервис также обеспечивает шифрование SSL/TLS, персональные ключи доступа для аутентификации и разрешения на основе ролей для обеспечения безопасности ваших данных.

Рабочий процесс Ruby с SDK

  1. Установите пакет Ruby (gem install groupdocs_assembly_cloud).

  2. Настройте SDK, используя app_sid и api_key.

  3. Загрузите файл шаблона в облачное хранилище GroupDocs через конечную точку UploadFile.

  4. Подготовьте объект AssembleOptions, который ссылается на загруженный шаблон, задаёт желаемый формат вывода и предоставляет источник данных XML/JSON (или файл, содержащий его).

  5. Вызовите assemble_document — API вернёт собранный документ, который можно загрузить напрямую или сохранить обратно в облачном хранилище.

Используя эту простую последовательность, вы можете создавать контракты, счета-фактуры, предложения, отчёты об отгрузке, персонализированные письма или любые другие критически важные для бизнеса документы по запросу, масштабируясь от единичного запроса до крупных пакетных сценариев с помощью функции слияния почты.

Ruby SDK также предлагает вспомогательные классы для работы с хранилищем, обработки ошибок и настройки времени ожидания запросов, что обеспечивает беспроблемную интеграцию с Rails, Sinatra или любым сервисом на основе Ruby.

Возможности REST API сборки документов

Создание документов на основе шаблонов с заполнителями

Связывание данных в стиле LINQ для источников XML и JSON

Вставляйте изображения, диаграммы и графики в вывод

Создавать динамические таблицы из данных массива

Условные блоки контента с использованием выражений

Безопасный доступ к API через персональные ключи доступа

Поддержка почтового слияния для пакетных персонализированных писем

Генерация и встраивание штрихкодов (QR, Code128, …)

Установить цвета фона для вывода HTML

Передача данных по протоколу SSL/TLS

Создать документ на Ruby

В приведенном ниже фрагменте кода показано, как создать документ с помощью Assembly Cloud Ruby SDK. Выполняемые шаги:

  1. Настройте SDK, используя SID вашего приложения и ключ API.
  2. Загрузите файл шаблона в Cloud Storage.
  3. Определите AssembleOptions — шаблон, формат вывода и источник данных.
  4. Вызовите assemble_document для получения собранного файла.
require_relative '../lib/groupdocs_assembly_cloud'

GroupDocsAssemblyCloud.configure do |config|
  config.client_data['app_sid'] = '.#-.#-.#-.#-.#'
  config.client_data['api_key'] = '......'
end

@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

Ресурсы поддержки и обучения

GroupDocs.Assembly Cloud также предлагает SDK для других языков:

  РУССКИЙ