如何在 Ruby 中使用 REST API 将 HTML 转换为 PDF

HTML 到 PDF 转换器 |免费在线将 HTML 转换为 PDF

作为 Ruby 开发人员,您可以使用 GroupDocs.Conversion Cloud API 在云端以编程方式将 HTML 文件转换为 PDF 文档。 HTML 到 PDF 转换器软件有助于阅读离线文章或以便携式形式共享转换后的文件。在本文中,我们将学习如何在 Ruby 中使用 REST API 将 HTML 转换为 PDF。

本教程应涵盖以下主题:

HTML 到 PDF 转换 REST API 和 Ruby SDK 安装

为了在不丢失格式的情况下开始将 HTML 转换为 PDF,我们将通过保留网页的原始文本和布局来使用 GroupDocs.Conversion Cloud API 的 Ruby SDK。因此,打印您的文档不会导致布局混乱。我们的 API 允许您将任何 支持的文件格式 的文档和图像转换为您需要的任何格式。您可以轻松地在 Word、PowerPoint, Excel、PDF、HTML、CAD、光栅图像等 50 多种文档和图像之间进行转换。

您可以免费将 GroupDocs.Conversion html to pdf 库安装到您的 Ruby 应用程序中。在 Rails 控制台中使用以下命令将 html 转换为 pdf 免费下载 gem:

gem install groupdocs_conversion_cloud

在开始执行步骤和可用代码示例之前,请从 仪表板 获取您的客户端 ID 和客户端密码。获得 ID 和密码后,请添加如下所示的代码:

# 免费注册后,从 https://dashboard.groupdocs.cloud 获取您的 client_id 和 client_secret。
# 在你的 ruby 应用程序中为 http://api.groupdocs.cloud 加载 gem

require 'groupdocs_conversion_cloud'
@client_id = "xxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"
@client_secret = "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"
# 在此处添加您的存储名称
@mystorage = "InternalStorage"

使用 REST API 在 Ruby 中将 HTML 转换为 PDF

您可以按照以下简单步骤将 HTML 格式转换为 PDF 文件以供离线查看和阅读:

上传文件

首先,使用下面给出的代码示例将 HTML 文档上传到云存储以进行 html2pdf 多页转换:

# API 初始化以创建转换 API 的实例
@fileApi = GroupDocsConversionCloud::FileApi.from_keys(@client_id, @client_secret)

# 上传文件到云存储

@htmlfile = "#{Rails.root}/public/groupdocs-files/two-pages.html"
@fileStream = File.new(@htmlfile, "r")

@request = GroupDocsConversionCloud::UploadFileRequest.new("html-to-pdf/two-pages.html", @fileStream, @mystorage)
@response = @fileApi.upload_file(@request)

@fileStream.close()

puts("HTML File Uploading completed." + (@response).to_s )

因此,上传的 HTML 文件将在云端仪表板的 文件部分 中可用。

在 Ruby 中将 HTML 转换为 PDF

您可以按照以下步骤轻松地将 HTML 文档以编程方式转换为 PDF:

  • 创建一个 ConvertApi 的实例
  • 创建 ConvertSettings 的实例
  • 将 HTML 文件路径和输出文件格式设置为“pdf”
  • 创建 HtmlLoadOptions 的实例
  • 将页面\编号设置为 true
  • 分配加载选项设置
  • 设置输出文件路径“html-to-pdf”
  • 使用 ConvertSettings 创建 ConvertDocumentRequest
  • 最后,用 ConvertDocumentRequest 调用 convertdocument() 方法

以下代码示例显示如何使用 REST API 将 HTML 文件转换为 PDF 文档。

# 创建必要的 API 实例
@fileApi = GroupDocsConversionCloud::ConvertApi.from_keys(@client_id, @client_secret)

# 准备转换设置
settings = GroupDocsConversionCloud::ConvertSettings.new
settings.file_path = "html-to-pdf/two-pages.html"
settings.format = "pdf"

loadOptions = GroupDocsConversionCloud::HtmlLoadOptions.new
loadOptions.page_numbering = true

settings.load_options = loadOptions
settings.output_path = "html-to-pdf"

# 转换成PDF
result = @fileApi.convert_document(GroupDocsConversionCloud::ConvertDocumentRequest.new(settings))
puts("HTML file successfully converted to pdf file.")

下载转换后的文件

以上代码示例将html2pdf格式文件保存在云端。您可以使用以下代码示例下载它:

# API 初始化:创建转换 API 的实例
@fileApi = GroupDocsConversionCloud::FileApi.from_keys(@client_id, @client_secret)

# 下载 PDF 文件请求
@request = GroupDocsConversionCloud::DownloadFileRequest.new("html-to-pdf/two-pages.pdf", @mystorage)
@response = @fileApi.download_file(@request)

puts("PDF file successfully downloaded." + (@response).to_s )

使用 Ruby 中的高级选项将 HTML 转换为 PDF

您还可以按照以下步骤使用高级选项以编程方式将 HTML 转换为 PDF 文档:

  • 创建一个 ConvertApi 的实例
  • 创建 ConvertSettings 的实例
  • 将 HTML 文件路径和输出文件格式设置为“pdf”
  • 创建 HtmlLoadOptions 的实例
  • 将页面\编号设置为 true
  • 创建 PdfConvertOptions 的实例
  • 设置各种convertOptions center\window, from\page, margin\top等。
  • 分配加载选项设置 and convert options settings
  • 提供输出文件路径“html-to-pdf”
  • 使用 ConvertSettings 创建 ConvertDocumentRequest
  • 现在终于用 ConvertDocumentRequest 调用 convertdocument() 方法

以下代码示例显示了如何使用 Ruby 中的 REST API 将 chrome HTML 文档转换为具有高级设置的 PDF 文档。请按照前面提到的步骤上传和下载文件。

#  创建 HTML 到 PDF 转换 API 的实例
@fileApi = GroupDocsConversionCloud::ConvertApi.from_keys(@client_id, @client_secret)

# 设置高级文件选项的转换设置

settings = GroupDocsConversionCloud::ConvertSettings.new
settings.file_path = "html-to-pdf/two-pages.html"
settings.format = "pdf"
 
loadOptions = GroupDocsConversionCloud::HtmlLoadOptions.new
loadOptions.page_numbering = true

convertOptions = GroupDocsConversionCloud::PdfConvertOptions.new
convertOptions.center_window = true
convertOptions.compress_images = false
convertOptions.display_doc_title = true
convertOptions.dpi = 1024.0
convertOptions.fit_window = false
convertOptions.from_page = 1
convertOptions.grayscale = false
convertOptions.image_quality = 100
convertOptions.linearize = false
convertOptions.margin_top = 5
convertOptions.margin_left = 5
convertOptions.password = "password"
convertOptions.unembed_fonts = true
convertOptions.remove_unused_streams = true
convertOptions.remove_unused_objects = true
convertOptions.remove_pdfa_compliance = false
 
settings.load_options = loadOptions
settings.convert_options = convertOptions
settings.output_path = "html-to-pdf"

# 将 HTML 转换为 PDF
result = @fileApi.convert_document(GroupDocsConversionCloud::ConvertDocumentRequest.new(settings))

puts("HTML file successfully converted to pdf file with advanced file options.")

免费在线 HTML 到 PDF 转换器

如何免费在线将 HTML 文件转换为 PDF?使用我们最好的免费 html 到 pdf 转换器,一键免费在线将 HTML 转换为 PDF。它是易于使用的免费在线 chrome html 到 pdf 转换器。这个免费的 html 到 pdf 转换器是使用上面的 convert html to pdf API 开发的。请尝试以下 chrome html 文档到 pdf 免费在线转换器

结论

在这篇文章中,我们学习了如何使用 Ruby 最好的 html 到云上的 pdf 库将 chrome HTML 转换为 PDF 文档。本文还解释了如何使用高级选项将 html 转换为带有图像的 pdf。此外,本文还介绍了如何以编程方式将 HTML 文件上传到云端,然后从云端下载转换后的 PDF 文件。您可以使用 文档 了解有关 GroupDocs.Conversion 文件转换器 API 的更多信息。我们还提供了一个 API 参考 部分,让您可以直接通过浏览器可视化我们的 API 并与之通信。

问一个问题

如果您对免费的 HTML 到 PDF 转换器或 GroupDocs.Conversion Cloud REST API 有任何疑问,请随时在 论坛 上询问我们。

也可以看看