因為平常我比較喜歡晚上看面試題。
市面上很多的面試題pdf都是白色的晚上看的話非常的刺眼。
所以我本能的去互聯網搜索看看有沒有pdf轉換為夜間模式的。
搜索了一段時間后發現并沒有這種東西。于是我自己做了一個轉換的python腳本。
import os
import fitz # PyMuPDF
from PIL import Image, ImageOpsdef convert_pdf_to_night_mode(input_pdf, output_pdf):doc = fitz.open(input_pdf)images = []for page_number in range(len(doc)):page = doc.load_page(page_number)pix = page.get_pixmap(dpi=150)img = Image.frombytes("RGB", [pix.width, pix.height], pix.samples)inverted_img = ImageOps.invert(img)images.append(inverted_img.convert("RGB"))if images:images[0].save(output_pdf, save_all=True, append_images=images[1:])print(f"已轉換: {os.path.basename(output_pdf)}")def batch_convert_folder(input_folder, output_folder):# 創建輸出文件夾(如果不存在)os.makedirs(output_folder, exist_ok=True)# 遍歷所有 PDF 文件for filename in os.listdir(input_folder):if filename.lower().endswith('.pdf'):input_pdf_path = os.path.join(input_folder, filename)output_pdf_path = os.path.join(output_folder, filename)convert_pdf_to_night_mode(input_pdf_path, output_pdf_path)print("所有 PDF 已轉換完畢!")input_folder_path = "input_pdfs" # 輸入文件夾路徑
output_folder_path = "night_pdfs" # 輸出文件夾路徑batch_convert_folder(input_folder_path, output_folder_path)
使用的方法也非常的簡單。
pip install pymupdf pillow
之后運行就可以了。
我們來看效果。
這個是沒有轉換之前的:
我們來看轉換之后的