optimize merge pdf

pull/716/head
Pete Matsyburka 1 month ago
parent df63acf0c8
commit 27d075ed63

@ -24,19 +24,19 @@ module PdfUtils
decrypted_io.tap(&:rewind).read decrypted_io.tap(&:rewind).read
end end
def merge(files) def merge(io_files)
merged_pdf = HexaPDF::Document.new merged_content = StringIO.new
files.each do |file| Pdfium.with_instance do
pdf = HexaPDF::Document.new(io: file) Pdfium::Document.create do |merged_pdf|
pdf.pages.each { |page| merged_pdf.pages << merged_pdf.import(page) } io_files.each do |io|
Pdfium::Document.open_io(io) { |pdf| merged_pdf.import_pages(pdf) }
end end
merged_content = StringIO.new merged_pdf.save(merged_content)
merged_pdf.validate(auto_correct: true) end
merged_pdf.write(merged_content, validate: false) end
merged_content.rewind
merged_content merged_content.tap(&:rewind)
end end
end end

Loading…
Cancel
Save