From d32ea8d0ddc321639ee4a231b77561e63ce1be02 Mon Sep 17 00:00:00 2001 From: "James R. Barlow" Date: Wed, 3 Aug 2016 01:28:27 -0700 Subject: [PATCH] Remove dead code from qpdf merge + PyPDF2 metadata patching I tried "qpdf merge + PyPDF2 metadata patching" first. The problem is that PyPDF2 produces a 1.3 by default and generally I have less confidence it. New approach is to stuff the Document Info metadata in the first page with PyPdf2, cross fingers and use qpdf to merge. It's not quite as clean and might harm the first page, but it's better than shipping files produced by PyPDF2. --- ocrmypdf/main.py | 31 ------------------------------- 1 file changed, 31 deletions(-) diff --git a/ocrmypdf/main.py b/ocrmypdf/main.py index c2d83e74..316f1c4f 100755 --- a/ocrmypdf/main.py +++ b/ocrmypdf/main.py @@ -1179,37 +1179,6 @@ def merge_pages_qpdf( qpdf.merge(pdf_pages, output_file) -#@active_if(options.output_type == 'pdf') -@active_if(False) -@merge( - input=[merge_pages_qpdf, repair_pdf], - output=os.path.join(work_folder, 'merged.pdf'), - extras=[_log, _pdfinfo, _pdfinfo_lock]) -def copy_metadata( - input_files, - output_file, - log, - pdfinfo, - pdfinfo_lock): - - merged_file = next( - (ii for ii in input_files if ii.endswith('merged_nometadata.pdf'))) - metadata_file = next( - (ii for ii in input_files if ii.endswith('.repaired.pdf'))) - - metadata_pdf = pypdf.PdfFileReader(metadata_file) - pdfmark = get_pdfmark(metadata_pdf) - pdfmark['/Producer'] = 'PyPDF2 ' + pypdf.__version__ - - merged_pdf = pypdf.PdfFileReader(merged_file) - output_pdf = pypdf.PdfFileWriter() - - output_pdf.appendPagesFromReader(merged_pdf) - output_pdf.addMetadata(pdfmark) - with open(output_file, 'wb') as f: - output_pdf.write(f) - - @merge( input=[merge_pages_ghostscript, merge_pages_qpdf], output=options.output_file,