gpt4 book ai didi

ruby-on-rails - 在 Ruby/Rails 中生成 PDF/HTML/DOCX 的最佳方法是什么

转载 作者:行者123 更新时间:2023-12-04 05:59:06 28 4
gpt4 key购买 nike

我需要创建一个应用程序,从字段中自动生成简历。我需要将它们转换为 PDF/HTML/DOC,但有很多可用的 gem。

您认为哪种 gem 最适合制作 PDF、HTML 和 DOC 格式的简历?

我找到了PDF的 Prawn ,但是制作类似简历的PDF最合适吗?

先感谢您。

编辑 :我发现了一个类似于 Prawn 的 gem,但对于 docx,也许您可​​能会感兴趣。
https://github.com/trade-informatics/caracal/

最佳答案

用于创作 PDF 文件

我会和一起去Prawn Wicked-PDF .

我知道 wicked 更方便,但 Prawn 既是原生的,也更灵活。

Wicked 依赖于 wkhtmltopdf 并使用系统调用 - 系统调用会导致并发问题,并且就性能而言成本很高。

你使用哪一个,我可能会添加 CombinePDF加入组合 .
(我有偏见 - 我是 gem 的作者)

这将允许您使用模板 PDF 文件 - 因此您可以使用 Prawn 或 Wicked 编写您的简历,并使用 CombinePDF gem 将其扔到设计精美的模板上。

CombinePDF 也可用于创建简单的文本对象、编号页面或编写表格...

require 'combine_pdf'
pdf = CombinePDF.new
pdf.new_page.textbox "Hello World!", font_size: 18, opacity: 0.75
pdf.save 'test.pdf' # use pdf.to_pdf to render the PDF into a String object.

...但我认为 Prawn 是更好的创作工具,而 CombinePDF 是一个很好的补充库,可以添加预制内容和设计:
require 'combine_pdf'
# get a "stamp" or page template.
# the secure copy will attempt to change the PDF data to avoid name conflicts.
template = CombinePDF.load(template_file_path).pages[0].copy(true)
# move the Prawn document into CombinePDF
pdf = CombinePDF.parse prawn_document.render
# add the template to each page, putting the template on the bottom
# (#>> for bottom vs. #<< for top)
pdf.pages.each {|page| page >> template}
# save the pdf file
pdf.save 'final.pdf' # or render to string, for sending over HTTP: pdf.to_pdf

至于 docx ,我一无所知......坦率地说,这是一种专有格式,在逆向工程时通常会出错。如果他们真的想要,我会避免它并让人们复制和粘贴 HTML。

关于ruby-on-rails - 在 Ruby/Rails 中生成 PDF/HTML/DOCX 的最佳方法是什么,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30590785/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com