简体中文 | English
PdfTool 是一个基于 Qt5 和 PDFium 的 PDF 水印处理工具,提供了直观的图形界面,支持 PDF 文件的浏览、水印添加和保存功能。该工具使用现代化的界面设计,支持中文本地化,并集成了字体子集化技术以优化文件大小。
- 多页浏览: 支持多页 PDF 文件的完整浏览
- 缩略图导航: 左侧缩略图面板,快速跳转到指定页面
- 缩放适配: 自动适配屏幕 DPI,支持高 DPI 显示器
- 页面切换: 上一页/下一页按钮导航
- 文字水印: 支持自定义文字内容的水印添加
- 字体设置: 支持选择字体和设置字体颜色
- 样式自定义:
- 字体大小可调
- 透明度设置 (0-1)
- 旋转角度调整
- 布局控制:
- 重复行数设置
- 重复列数设置
- 自动间距计算
- 实时预览: 添加水印前可预览效果
- 打开 PDF: 支持标准 PDF 文件格式
- 保存文件: 直接保存修改到原文件
- 另存为: 将修改后的文件保存到新位置
- 字体子集化: 自动优化嵌入字体,减小文件大小
- Qt 5: 跨平台 GUI 框架
- PDFium: Google 开源 PDF 渲染引擎
- Sfntly: Google 字体处理库,用于字体子集化
- CMake: 跨平台构建系统
- 操作系统: Windows 10/11 (x64)
- 编译器: Visual Studio 2019 或更高版本
- Qt 版本: Qt 5.9.7 或更高版本
- CMake: 3.10 或更高版本
- 克隆项目
git clone https://github.com/ZypherChan/PdfTool.git
cd PdfTool- 设置 Qt 环境
确保设置
QTDIR环境变量指向你的 Qt 安装目录:
set QTDIR=C:\Qt\5.15.2\msvc2019_64- 创建构建目录
mkdir build
cd build- 生成项目文件
cmake .. -DCMAKE_BUILD_TYPE=Release- 编译项目
cmake --build . 项目使用 windeployqt 自动部署 Qt 依赖项,编译完成后会自动:
- 拷贝 Qt 核心库(Qt5Core.dll, Qt5Gui.dll, Qt5Widgets.dll)
- 部署平台插件(platforms 目录)
- 拷贝字体文件到输出目录
- 排除不必要的组件(翻译、图标引擎、图像格式插件等)
程序会自动加载以下配置:
- 样式表:
:/qss/silvery.css- 银色主题界面 - 中文字体:
fonts/NotoSansCJKsc-Bold.ttf- 支持中文水印 - 翻译文件:
:/PdfTool_zh_CN.qm- 中文界面本地化
- 水印位置: 精确控制水印位置(左上、居中、右下等)
- 图片水印: 支持添加图片作为水印
💡 欢迎贡献: 如果你有想实现的功能,欢迎提交 Issue 或 Pull Request! 💬 功能建议: 有好的功能想法?请在 Issue 中分享你的建议!
A: 确保 pdfium.dll 在可执行文件同目录下,且为 x64 版本。
A: 检查 fonts/NotoSansCJKsc-Bold.ttf 文件是否存在,且字体文件完整。
欢迎提交 Issue 和 Pull Request!
- 使用清晰的提交信息
- 添加适当的测试用例
- 更新相关文档
- Fork 项目到你的仓库
- 创建功能分支 (
git checkout -b feature/amazing-feature) - 提交更改 (
git commit -m 'Add some amazing feature') - 推送到分支 (
git push origin feature/amazing-feature) - 创建 Pull Request
本项目采用 MIT 许可证 - 查看 LICENSE 文件了解详情。
- PDFium - Google 开源 PDF 引擎
- Qt Framework - 跨平台应用开发框架
- Sfntly - Google 字体处理库
- Noto Fonts - Google 开源字体项目
⭐ 如果这个项目对你有帮助,请给个 Star 支持一下!



