当前位置: 首页 > news >正文

一个简单的脚本,让pdf开启夜间模式

因为平常我比较喜欢晚上看面试题。
市面上很多的面试题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

之后运行就可以了。
我们来看效果。
这个是没有转换之前的:


我们来看转换之后的
在这里插入图片描述

http://www.dtcms.com/a/267910.html

相关文章:

  • 【IOS】XCode创建firstapp并运行(成为IOS开发者)
  • Maixcam的使用3程序打包
  • 【机器学习笔记Ⅰ】13 正则化代价函数
  • 2025年6月AIGC发展全景:技术轻量化、Agent产业化与伦理新挑战
  • bottles安装网易云出现的问题01中文出现乱码问题
  • 等保测评-Apache Tomcat中间件
  • SpringMVC参数接收与数据返回详解
  • MySQL 8.0 主从复制原理分析与实战
  • 传统微商困境与开源链动2+1模式、AI智能名片及S2B2C商城小程序的转型破局
  • 数据挖掘:从理论到实践的深度探索
  • 基于腾讯云开发与“人·事·财·物”架构理念的家政预约小程序设计与实现
  • 【PyTorch】PyTorch中torch.nn模块的卷积层
  • 10.1《3步用ChatGPT+LangChain打造高质量私有数据集,模型效果提升200%》
  • Java多线程知识小结:Synchronized
  • Flink ClickHouse 连接器数据读取源码深度解析
  • G-sensor运动检测功能开源:打破技术壁垒,加速智能硬件开发!
  • Java JDBC的初步了解
  • 力扣网编程45题:跳跃游戏II之正向查找方法(中等)
  • 【深度学习新浪潮】AI在材料力学领域的研究进展一览
  • 基于51单片机智能婴儿床
  • SQL 一键生成 Go Struct!支持字段注释、类型映射、结构体命名规范
  • 从前端转go开发的学习路线
  • 3、Configuring Topics
  • I-Cache、D-Cache 和 SRAM 的区别与联系
  • 系统架构设计师论文分享-论软件体系结构的演化
  • Docker容器中安装MongoDB,导入数据
  • nvm常用指令汇总
  • Spark流水线数据质量检查组件
  • 【认知】如何在高强度工作中保持心理健康和情绪稳定?
  • WizTree v4.2.5 x86 x64 单文件版