Created

Embed URL

HTTPS clone URL

SSH clone URL

You can clone with HTTPS or SSH.

Download Gist

Merging PDFs with Prawn

View pdf_merger.rb
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29
class PdfMerger
def merge(pdf_paths, destination)
first_pdf_path = pdf_paths.delete_at(0)
Prawn::Document.generate(destination, :template => first_pdf_path) do |pdf|
pdf_paths.each do |pdf_path|
pdf.go_to_page(pdf.page_count)
template_page_count = count_pdf_pages(pdf_path)
(1..template_page_count).each do |template_page_number|
pdf.start_new_page(:template => pdf_path, :template_page => template_page_number)
end
end
end
end
private
def count_pdf_pages(pdf_file_path)
pdf = Prawn::Document.new(:template => pdf_file_path)
pdf.page_count
end
end

D:/RailsInstaller/Ruby1.9.3/lib/ruby/gems/1.9.1/gems/pdf-core-0.1.6/lib/pdf/core
/object_store.rb:22:in initialize': undefined methodload_file' for # e::ObjectStore:0x2a33a68 @objects={}, @identifiers=[]> (NoMethodError)
from D:/RailsInstaller/Ruby1.9.3/lib/ruby/gems/1.9.1/gems/pdf-core-0.1.6
/lib/pdf/core/document_state.rb:8:in new'
from D:/RailsInstaller/Ruby1.9.3/lib/ruby/gems/1.9.1/gems/pdf-core-0.1.6
/lib/pdf/core/document_state.rb:8:in
initialize'
from D:/RailsInstaller/Ruby1.9.3/lib/ruby/gems/1.9.1/gems/prawn-0.15.0/l
ib/prawn/document.rb:206:in new'
from D:/RailsInstaller/Ruby1.9.3/lib/ruby/gems/1.9.1/gems/prawn-0.15.0/l
ib/prawn/document.rb:206:in
initialize'
from D:/RailsInstaller/Ruby1.9.3/lib/ruby/gems/1.9.1/gems/prawn-0.15.0/l
ib/prawn/document.rb:146:in new'
from D:/RailsInstaller/Ruby1.9.3/lib/ruby/gems/1.9.1/gems/prawn-0.15.0/l
ib/prawn/document.rb:146:in
generate'
from testprawn.rb:14:in merge'
from testprawn.rb:25:in
'

@canjianx

getting the same error.

Were you able to find any fix for it.

--EDIT--

I guess the latest version of Prawn PDF does not support Templates anymore and so this would not work.

I'm not getting an error, I'm just getting blank PDFs.

uzzer commented

I am also getting blank PDFs.

bhh commented

prawn removed support for :template as of 0.14.0 :( causing the blank pages

Officially, Prawn dropped template support, so it will not work.
See more about that: https://github.com/prawnpdf/prawn/issues/376

PS. Sorry, didn't see @bhh post :)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Something went wrong with that request. Please try again.