From 00fc8d07fbeab6a604e183c72d0da5e8bc6a8324 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?S=C3=A9bastien=20Miquel?= Date: Mon, 16 Feb 2026 20:24:37 +0100 Subject: [PATCH] page splitter : support empty clip --- page_splitter.py | 23 ++++++++++++----------- 1 file changed, 12 insertions(+), 11 deletions(-) diff --git a/page_splitter.py b/page_splitter.py index 34d5536..1e51da3 100644 --- a/page_splitter.py +++ b/page_splitter.py @@ -362,12 +362,14 @@ class PDFPreviewer: rect_left = fitz.Rect(0, 0, line_x, page.rect.height) else: rect_left = fitz.Rect(page.rect.width-line_x, 0, page.rect.width, page.rect.height) - doc_left = fitz.open() - page_left = doc_left.new_page(width=rect_left.width, height=rect_left.height) - page_left.show_pdf_page(page_left.rect, self.doc, i, clip=rect_left) - page_left.set_rotation(rotation) - if keep == "both" or keep == "left": + if (keep == "both" or keep == "left") and line_x > 0: + + doc_left = fitz.open() + page_left = doc_left.new_page(width=rect_left.width, height=rect_left.height) + page_left.show_pdf_page(page_left.rect, self.doc, i, clip=rect_left) + page_left.set_rotation(rotation) + output_path_left = self.split_filename_left(i) doc_left.save(output_path_left) doc_left.close() @@ -377,12 +379,11 @@ class PDFPreviewer: rect_right = fitz.Rect(line_x, 0, page.rect.width, page.rect.height) else: rect_right = fitz.Rect(0, 0, page.rect.width-line_x, page.rect.height) - doc_right = fitz.open() - page_right = doc_right.new_page(width=rect_right.width, height=rect_right.height) - page_right.show_pdf_page(page_right.rect, self.doc, i, clip=rect_right) - page_right.set_rotation(rotation) - - if keep == "both" or keep == "right": + if (keep == "both" or keep == "right") and line_x < page.rect.width: + doc_right = fitz.open() + page_right = doc_right.new_page(width=rect_right.width, height=rect_right.height) + page_right.show_pdf_page(page_right.rect, self.doc, i, clip=rect_right) + page_right.set_rotation(rotation) output_path_right = self.split_filename_right(i) doc_right.save(output_path_right) doc_right.close()