diff --git a/page_splitter.py b/page_splitter.py index 9dbd1aa..34d5536 100644 --- a/page_splitter.py +++ b/page_splitter.py @@ -4,6 +4,7 @@ from tkinter import messagebox from PIL import Image, ImageTk, ImageDraw import sys import os +import re import glob import shutil from pypdf import PdfReader, PdfWriter @@ -288,7 +289,10 @@ class PDFPreviewer: def finish_and_process(self): """Starts the PDF splitting process and moves files.""" self.split_pdf() + # print("Debug : ", self.page_settings) + # input("Splitting done. Continue ?") self.reorder_pdfs() + # input("Reorder done. Continue ?") self.concate_files() # Logic to move original to backup and replace with new file @@ -421,7 +425,13 @@ class PDFPreviewer: def concate_files(self): writer = PdfWriter() - pdf_files = sorted(glob.glob(os.path.join(self.reorder_dir, "*.pdf"))) + def natural_key(text): + return [int(c) if c.isdigit() else c.lower() for c in re.split(r'(\d+)', text)] + + pdf_files = sorted( + glob.glob(os.path.join(self.reorder_dir, "*.pdf")), + key=natural_key + ) for pdf in pdf_files: reader = PdfReader(pdf)