From 9ffdf979f448e2633f5a367083b90c5a0dc5241a Mon Sep 17 00:00:00 2001 From: Richard Schreiber Date: Thu, 20 Jun 2024 12:07:04 +0200 Subject: [PATCH] PDF: ignore outline, annots, etc. when merging background-pdf (#4249) --- src/pretix/base/pdf.py | 21 ++++++++++++++++++--- 1 file changed, 18 insertions(+), 3 deletions(-) diff --git a/src/pretix/base/pdf.py b/src/pretix/base/pdf.py index 91b714fc8..96d4d1f0e 100644 --- a/src/pretix/base/pdf.py +++ b/src/pretix/base/pdf.py @@ -1092,10 +1092,20 @@ class Renderer: fg_num_pages = fg_pdf.get_num_pages() bg_num_pages = self.bg_pdf.get_num_pages() bg_pdf_to_merge = PdfWriter() - bg_pdf_to_merge.append(self.bg_pdf, pages=(0, min(bg_num_pages, fg_num_pages))) + bg_pdf_to_merge.append( + self.bg_pdf, + pages=(0, min(bg_num_pages, fg_num_pages)), + import_outline=False, + excluded_fields=("/Annots", "/B") + ) if fg_num_pages > bg_num_pages: # repeat last page in bg_pdf to match fg_pdf - bg_pdf_to_merge.append(bg_pdf_to_merge, pages=[bg_num_pages - 1] * (fg_num_pages - bg_num_pages)) + bg_pdf_to_merge.append( + bg_pdf_to_merge, + pages=[bg_num_pages - 1] * (fg_num_pages - bg_num_pages), + import_outline=False, + excluded_fields=("/Annots", "/B") + ) bg_pdf_to_merge.write(bg_filename) @@ -1162,7 +1172,12 @@ def merge_background(fg_pdf: PdfWriter, bg_pdf: PdfWriter, out_file, compress): bg_num_pages = bg_pdf.get_num_pages() if fg_num_pages > bg_num_pages: # repeat last page in bg_pdf to match fg_pdf - bg_pdf.append(bg_pdf, pages=[bg_num_pages - 1] * (fg_num_pages - bg_num_pages)) + bg_pdf.append( + bg_pdf, + pages=[bg_num_pages - 1] * (fg_num_pages - bg_num_pages), + import_outline=False, + excluded_fields=("/Annots", "/B") + ) bg_pdf.write(bg_filename)