当前位置: 首页 > 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.lryc.cn/news/581748.html

相关文章:

  • 【STM32】通用定时器PWM
  • 李宏毅NLP-8-语音模型
  • 20250706-11-Docker快速入门(下)-构建Nginx镜像和Tomcat镜像_笔记
  • Kotlin lazy 委托的底层实现原理
  • styled-components:现代React样式解决方案
  • 构建下一代智能应用:RAG系统开发深度指南
  • 基于STM32单片机的心率血氧监测系统设计(STM32代码编写+手机APP设计+PCB设计+Proteus仿真)
  • C# 接口(什么是接口)
  • 【机器学习笔记Ⅰ】1 机器学习
  • .golangci.yml文件配置
  • C语言学习(第一天)
  • 求医十年,病因不明,ChatGPT:你看起来有基因突变
  • Gin 框架中如何实现 JWT 鉴权中间件
  • PH热榜 | 2025-07-06
  • 宏定义实现自定义关系运算比较--3
  • 微服务负载均衡全解析:从原理到实践
  • 【王树森推荐系统】召回05:矩阵补充、最近邻查找
  • 操作系统【2】【内存管理】【虚拟内存】【参考小林code】
  • Linux - Linux基础知识
  • 数据挖掘:深度解析与实战应用
  • AI+Web3:从自动化工具到自主经济体的范式革命
  • 电信、移动、联通、广电跨运营商网速慢原因
  • 基于文心开源大模型ERNIE-4.5-0.3B-Paddle私有化部署并构建一个企业智能客服系统
  • SpringBoot基于Mysql的商业辅助决策系统设计与实现
  • Python实现优雅的目录结构打印工具
  • 暑假算法日记第二天
  • 李宏毅genai笔记:LLM内部机制
  • ubuntu 安装 MQTT服务器 mosquitto homeassistant 并在HA中集成MQTT
  • Solidity——returns和return区别、命名式返回、解构式赋值
  • 【代码问题】【模型下载】从 HuggingFace 上下载模型