PDFKit 使用 Rails 5
PDFKit usage Rails 5
我已经在 Windows 10 上安装了 PDFKit 和 wkhtmltopdf 以便与 Rails 5 一起使用。
但我找不到任何有关如何将 html.erb
文件呈现为 PDF 的相关示例。
我看了一下这个:pdfkit Usage 它可以将任何网站保存为 PDF。
我有一个 <div>
想要呈现为 PDF。
我建议您使用 Wicked_pdf gem
在 rails 上生成快速简单的 pdf。 Here 是 wicked pdf
和 pdfkit
的一些示例。
答案:
1) 添加 gem 'pdfkit
gem 'wkhtmltopdf-binary'
到 Gemfile。
2) 运行 bundle install
3) 安装 wkhtmltopdf,然后 运行 which wkhtmltopdf
然后将此路径粘贴到 config/initializers/pdfkit.rb
`# config/initializers/pdfkit.rb
PDFKit.configure do |config|
config.wkhtmltopdf = '/home/harri/.rbenv/shims/wkhtmltopdf'
config.default_options = {
:page_size => 'A4',
:encoding => 'UTF-8',
:print_media_type => true
}
config.default_options[:load_error_handling] = 'ignore'
# 仅当您的外部主机名在服务器上不可用时才使用。
config.root_url = "http://localhost"
config.verbose = 假
结束`
4) 在你的控制器中:
`html = render_to_string(:action => "edit", :layout => false)
kit = PDFKit.new(html)
kit.stylesheets << "#{Rails.root}/app/assets/stylesheets/pdf.css"
#kit.to_file("#{Rails.root}/public/system/daoe/daoe" + @daoe.id.to_s+'.pdf')
send_data(kit.to_pdf, :filename => 'report.pdf', :type => 'application/pdf', :disposition => 'inline'`
如果要保存 PDF,请使用 kit.to_file,如果要呈现 PDF 整页,请使用 send_data。
我已经在 Windows 10 上安装了 PDFKit 和 wkhtmltopdf 以便与 Rails 5 一起使用。
但我找不到任何有关如何将 html.erb
文件呈现为 PDF 的相关示例。
我看了一下这个:pdfkit Usage 它可以将任何网站保存为 PDF。
我有一个 <div>
想要呈现为 PDF。
我建议您使用 Wicked_pdf gem
在 rails 上生成快速简单的 pdf。 Here 是 wicked pdf
和 pdfkit
的一些示例。
答案:
1) 添加 gem 'pdfkit
gem 'wkhtmltopdf-binary'
到 Gemfile。
2) 运行 bundle install
3) 安装 wkhtmltopdf,然后 运行 which wkhtmltopdf
然后将此路径粘贴到 config/initializers/pdfkit.rb
`# config/initializers/pdfkit.rb
PDFKit.configure do |config|
config.wkhtmltopdf = '/home/harri/.rbenv/shims/wkhtmltopdf'
config.default_options = {
:page_size => 'A4',
:encoding => 'UTF-8',
:print_media_type => true
}
config.default_options[:load_error_handling] = 'ignore'
# 仅当您的外部主机名在服务器上不可用时才使用。 config.root_url = "http://localhost" config.verbose = 假 结束`
4) 在你的控制器中:
`html = render_to_string(:action => "edit", :layout => false)
kit = PDFKit.new(html)
kit.stylesheets << "#{Rails.root}/app/assets/stylesheets/pdf.css"
#kit.to_file("#{Rails.root}/public/system/daoe/daoe" + @daoe.id.to_s+'.pdf')
send_data(kit.to_pdf, :filename => 'report.pdf', :type => 'application/pdf', :disposition => 'inline'`
如果要保存 PDF,请使用 kit.to_file,如果要呈现 PDF 整页,请使用 send_data。