有没有人知道一个简单的PDF写入器,可以很好地和Rails3一起工作?如果是这样的话,谁能给我指点一下,告诉我如何配置它以便与Rails3协同工作?
发布于 2011-01-23 07:38:42
发布于 2012-03-12 20:14:54
对于那些像我一样前段时间来到这里寻找在Rails3应用程序中工作的PDF::Writer的人,也许是迁移现有的Rails2.x应用程序,我最终实现了pdf-writer 1.1.8版,可以在Rails3.2应用程序中工作。
在Gemfile中
gem 'pdf-writer'我在config/initializers/pdfwriter_template.rb中有这个
module ActionView
module Template::Handlers
class PDFWriter
def call(template)
require_engine
"pdf = ::PDF::Writer.new( :paper => 'A4' );" +
"pdf.compressed = true if Rails.env.to_s == 'production';" +
template.source +
";pdf.render"
end
protected
def require_engine
@required ||= begin
require 'pdf/writer'
require 'pdf/simpletable'
true
end
end
end
end
end
ActiveSupport.on_load(:action_view) do
ActionView::Template.register_template_handler :rpdf, ActionView::Template::Handlers::PDFWriter.new
end然后,在控制器操作中,我可以编写类似这样的代码:
def pdf_test
@record = Record.find(params[:id])
fileout = render_to_string :layout=>false
send_data(fileout, :type => "application/pdf", :filename => 'test_record.pdf')
end有一个模板文件pdf_test.rpdf
pdf.text "Hello from record number #{@record.number}!!"注意:这不是当前在Rails中呈现的最佳实践方式!请使用PDFKit或对虾!
https://stackoverflow.com/questions/4769799
复制相似问题