大虾使用pdf模板

时间:2014-07-30 18:36:45

标签: ruby-on-rails ruby prawn

我想用prawn生成一个使用PDF模板的文档。

我没有错误,但完全忽略了模板。有谁知道为什么会这样?我真的很感激任何帮助!

class JobPdf < Prawn::Document

def initialize(job)
  super()
  @job = job
  text @job.title
  text @job.target_text
end

def render(job)
  doc = Prawn::Document.new({template: "#{Rails.root}/app/templates/jobs/layout.pdf"})
  doc.text job.title
  doc.text job.target_text
  doc.render
end

乔布斯控制器:

 def show
  @job = Job.find(params[:id])
  respond_to do |format|
    format.html
    format.pdf do
      pdf = JobPdf.new(@job)
      send_data pdf.render(@job),
      filename: "job#{@job.id}.pdf",
      type: "application/pdf",
      disposition: "inline"
    end
  end
end

2 个答案:

答案 0 :(得分:2)

Prawn已经从其核心删除了模板,显然可以使用https://github.com/prawnpdf/prawn-templates仍然可以使用它们,但请注意,即使是大虾状态,这是“非常错”

答案 1 :(得分:1)

有一个教程,可以执行这样的任务:

http://adamalbrecht.com/2014/01/31/pre-filling-pdf-form-templates-in-ruby-on-rails-with-pdftk/

但是为了使它工作,除了Rails之外你还必须使用PDFtk!

问候!