https://hk.releasemind.com/post/digital-tools/solve-duplex-scanning-with-naps2-178313769748/
有軟體可以幫你插入偶數頁
不過這是掃描進來後直接處理
如果你已經掃了一份就要重來...
掃成一堆JPG或PNG,應該會有編號或檔案生成日期做排序,以python + PyPDF2 把所有相關的圖檔串連成PDF,用法可以直接問CHATGPT或其他AI都能寫的出來
幫忙描述一下需求:
原始文件是雙面列印,但掃描器的自動送紙一次只能掃描單面
所以使用時把整疊文件放進去,會先掃單數頁
再手動翻面放進掃描器,掃出偶數頁
因此會得到類似下面結果(假設共6頁)
001.pdf(掃出第 1 頁)
002.pdf(掃出第 3 頁)
003.pdf(掃出第 5 頁)
(此時翻轉再放入)
004.pdf(掃出第 2 頁)
005.pdf(掃出第 4 頁)
006.pdf(掃出第 6 頁)
程式需求是重新命名檔案名稱
讓檔名與實際頁數符合
用 python 寫大概這樣吧
PS. get_new_page_num
是我用 javascript 寫的,因為比較少用 python,所以讓AI翻譯並補上其他部分
import os
def get_new_page_num(total_pages: int, page_num: int) -> int:
half = (total_pages + 1) >> 1
if page_num > half:
return (page_num - half) << 1
else:
return ((page_num - 1) << 1) | 1
# 使用當前工作目錄
folder_path = os.getcwd()
# 取得該目錄下所有檔案(排除資料夾)
all_files = [f for f in os.listdir(folder_path) if os.path.isfile(os.path.join(folder_path, f))]
# 依檔名排序
all_files.sort()
total_pages = len(all_files)
# 重新命名
for index, filename in enumerate(all_files, start=1):
new_page = get_new_page_num(total_pages, index)
new_filename = f"page_{new_page:03}.pdf"
src = os.path.join(folder_path, filename)
dst = os.path.join(folder_path, new_filename)
print(f"#{index}: {src} -> renamed to: {dst}")
# 重新命名檔案(真的要執行再取消註解)
# os.rename(src, dst)
推薦一套在我裝機清單裡的專門作PDF分割合併的開源軟體 : PDFsam
PDFsam Basic版本是免費的,下方截圖中的交替合併應該就是您要的功能。(這功能我沒用過,您可以測試一下~~)