Skip to content

Repository files navigation

GHY PDF Editor logo

GHY PDF Editor

在 Windows 本地原位修改 PDF 文字,尽可能保留原字体、字号、位置和矢量清晰度。

English · 简体中文

Latest release Downloads Windows build Platform

GHY PDF Editor social preview

单文件 EXE,无需安装 Node.js 或 Electron。下载后直接双击运行。

当前 EXE 尚未配置商业代码签名。Windows SmartScreen 首次运行时可能显示警告,可点击“更多信息 → 仍要运行”。请始终从本仓库的 Releases 页面下载。

它解决什么问题

很多 PDF 工具擅长批注、签名或整页重排,却很难把一段已有文字改掉后仍然像原文一样。GHY 会读取 PDF 内部字体信息、扫描本机字体并继承文字的真实位置和渲染方式,专注于“修改一小段文字,同时尽量不破坏原版式”。

GHY PDF Editor editing a completely fictional statement

演示使用的是仓库内的完全虚构样本 PDF,其中姓名、地址、账号与交易均为编造数据,不包含真实个人或银行信息。

主要能力

  • 直接选择并替换已有 PDF 文字,保留原字号、基线、位置和颜色。
  • 优先复用 PDF 内嵌字体;必要时按 Family、Full name 和 PostScript name 匹配 Windows 字体。
  • 扫描系统字体目录和当前用户字体目录,支持 TTF、OTF、TTC 与 OTC。
  • 缺字时给出字体兼容提示,并可按字符自动回退中英文字体。
  • 支持添加、删除、拖动、八方向缩放、精确 X/Y/宽/高和自动换行。
  • 支持左右目标对齐、参考行距匹配和多个文本框垂直等距分布。
  • 支持粗体、斜体、下划线、颜色、左中右对齐及格式刷。
  • 匹配字体可用时保持矢量导出;只有无法取得字形的相关页面才使用 216 DPI 栅格兜底。
  • 支持撤销/重做和常用键盘快捷键。
  • 本地读取和导出 PDF,不把文档上传到服务器。

截图

GHY PDF Editor application screenshot with a fictional PDF

快速开始

普通用户

  1. Releases 下载 GHY-PDF-Editor-*-win-x64.exe
  2. 双击 EXE,点击“打开 PDF”。
  3. 点击要修改的文字,在右侧选择“修改”,然后输入新内容。
  4. 点击“导出 PDF”保存为新文件;原文件不会被覆盖。

应用使用对方电脑已经安装的字体。若 PDF 字体未嵌入且本机也未安装,程序会提示并尝试选择兼容字体,外观可能产生轻微差异。

从源码运行

需要 Node.js 20 或更高版本:

npm install
npm run dev

也可以双击项目根目录的 启动PDF修改器.bat

测试与打包

npm test
npm run build
npm run package:win

npm run package:win 会在 release/ 生成 Windows x64 便携版 EXE。推送形如 v1.1.0 的标签后,GitHub Actions 会自动测试、打包并创建 Release。

字体与导出策略

  1. 修改已有文字时优先复用 PDF.js 已载入的文档内部字体。
  2. 无法直接复用时,去除 PDF 子集字体前缀并匹配本机字体。
  3. 同时继承填充/描边渲染模式,避免把“Regular + 描边”误判为真正的 Bold。
  4. 字体缺少部分字符时,预览和导出可按字符回退到兼容字体。
  5. 有可嵌入字体时采用矢量导出;无法取得字体程序时只栅格化受影响的页面。

快捷键

操作 快捷键
打开 PDF Ctrl+O
导出 PDF Ctrl+S
撤销 / 重做 Ctrl+Z / Ctrl+YCtrl+Shift+Z
删除文字 Delete
微调位置 方向键
取消当前选择模式 Esc

本地与便携

  • Electron 缓存、设置、会话、日志和临时数据写入应用旁边的 .runtime/
  • 删除 EXE 旁边的 .runtime/ 即可移除应用自身产生的运行数据。
  • 应用退出时会清除自身写入的 Windows 最近文档记录。
  • Windows 事件日志、杀毒软件记录和磁盘索引属于操作系统行为,普通应用无法承诺清除。

已知限制

  • 目前发布的是 Windows x64 便携版,暂未提供 macOS、Linux 和 Windows ARM 构建。
  • 复杂 Type 3、轮廓字、未嵌入字体或特殊编码 PDF 可能需要栅格兜底。
  • 程序目标是精确修改文字,不是完整的页面排版、OCR 或表单设计套件。
  • 未签名构建可能触发 SmartScreen;后续计划加入代码签名。

反馈与贡献

如果它确实解决了你的 PDF 修改问题,欢迎点一个 ⭐,这会帮助更多人发现项目。

许可证状态

本仓库当前尚未添加开源许可证,源码默认保留全部权利。你可以查看并运行公开代码,但复制、修改和再分发前请先获得作者许可。

About

Local-first Windows PDF text editor that preserves fonts and layout. 本地运行、尽可能保留字体与版式的 PDF 文字编辑器。

Topics

Resources

Stars

1 star

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages