用Prawn合并PDF文件

问题描述 投票:0回答:1

我在合并多个 PDF 文件时遇到问题。

我正在使用 PrawnPDF 的“显示”操作生成 PDF。

我希望能够将多个选定的项目合并到一个 PDF 中。

我正在尝试使用combine_pdfgeam以这种方式解决它

def nested_jobs_multiply_pdf
  pdf_file_paths  = params[:items]
  pdf_file_paths  = pdf_file_paths.map! do |x|
    x.to_s + ".pdf"
  end

  @pdfForms = CombinePDF.new
  pdf_file_paths.each do |x|
    @pdfForms << CombinePDF.parse(nested_job_path(x, format: "pdf"))
  end
  @pdfForms.save "combined.pdf"

  flash[:notice] = "Combined PDF successful"
  redirect_to nested_jobs_path
end

不幸的是,我收到错误

RuntimeError in NestedJobsController#nested_jobs_multiply_pdf
Unknown PDF parsing error - malformed PDF file?

Extracted source (around line #89):
87   @pdfForms = CombinePDF.new
88    pdf_file_paths.each do |x|
89    @pdfForms << CombinePDF.parse(nested_job_path(x, format: "pdf"))
90   end
91  @pdfForms.save "combined.pdf"
92
ruby-on-rails ruby pdf prawn
1个回答
2
投票

尝试一下是否有效:

pdf_file_paths.each do |path|
  @pdfForms << CombinePDF.load(path) #path is relative path to pdf file stored locally like path/to/801.pdf
end
© www.soinside.com 2019 - 2024. All rights reserved.