使用 PDF-XChange Editor 进行 PDF 批注并生成批注链接

本贴最后更新于 364 天前,其中的信息可能已经斗转星移

PDF 阅读器选择

使用思源笔记、Obsidian、logseq 等笔记软件的用户都喜欢使用它们进行 PDF 阅读,因为它们能够将批注生成批注链接到笔记里,点击该链接就能够跳转到 PDF 文件原文位置、对信息进行回溯。

但我个人还是更倾向于使用专门的 PDF 阅读器进行阅读和批注,主要有下面几个原因:

  • 专门的 PDF 阅读器更加流畅、显示效果更好,且批注方式更加多样。

    • 笔记软件基本上都使用 pdf.js 来实现相关功能,用是可以用,但不够好用。
  • 批注内容写入 PDF 文件,便于管理。

    • 笔记软件的批注信息是保存在 PDF 文件之外的,使用 PDF 阅读器是看不到这些批注的,需要使用笔记软件打开才能看到。
  • 部分笔记软件只能批注其附件文件夹内的 PDF 文件(思源,说的就是你!),会导致 PDF 文件重复、占用同步空间等问题。

因为上述原因,我一直在使用 PDF 阅读器进行批注,使用过下列软件:

zotero bookxnote PDF-XChange Editor
外观展示 image image image
生成批注链接 ★★★★
需要使用 quicker 等辅助工具生成 URI 链接
★★★★★
软件本身支持 URI 链接,很方便
★★★
需要使用 quicker 等辅助工具生成命令行参数,点击链接后调用命令行工具打开阅读器,比较麻烦。
保存批注到 PDF 文件 ★★
需要使用收费插件,哒咩 X
X
没找到相关功能
★★★★★
打开任意位置的 PDF 文件 ★★★★
将文件拖入到 zotero 内,完成链接就能打开了
★★★★★ ★★★★★
当做系统默认阅读器 X
并不能作为系统默认阅读器来使用,必须从 zotero 库内打开文件
★★★★★ ★★★★★
UI 美观度 ★★★★
比较素雅
★★
丑拒
★★★★
有点花里胡哨,但是自定义度高
编辑 PDF 文件 X X ★★★★★
编辑功能顶呱呱,可与 adobe acrobat 掰腕子
OCR
可以安装 OCR 插件,使用 Tesseract 引擎
X
需要调用外部 API,约等于没有

ABBYY FineReader 引擎识别,速度和精度还不错
PDF 文件管理 ★★★★★
学生党、研究人员的利器
★★★
聊胜于无吧
X
只是个阅读器和编辑器

鉴于个人的使用习惯以及需要编辑 PDF 文件的需求,最后选择了 PDF-XChange Editor 作为我的 PDF 阅读器。

PDF-XChange Editor 注释链接的获取与打开

下面介绍下如何在 PDF-XChange Editor 中生成注释(批注)链接。

主要是通过给 PDFXEdit.exe 传入相关参数来实现的,PDFXEdit.exe 支持如下的命令行参数:

/A page=页码;comment=批注ID "PDF文件路径"

/A:表示打开文件。

page:要打开的页码。

comment:每个批注有自己的 ID,需要通过注释的属性进行查看,或者通过 JS 代码获取。

PDF 文件路径:要打开的 PDF 文件,可以通过 JS 代码或者软件内置的宏进行获取。

现在要解决两个问题:

  1. 获取 page、comment id 和 PDF 文件路径等信息,用这些信息生成一个可以点击的链接
  2. 点击链接后调用命令行来将参数传给 PDFXEdit.exe

上述问题都能用这个 quicker 动作解决:生成注释外链 - by 浅沧 - 动作信息 - Quicker (getquicker.net)

动作使用方法:

  1. 在 PDF-XChange Editor 中选中文本
  2. 运行 quicker 动作,会生成一个可以启动 quicker 的 markdown 链接并发送到剪贴板。格式如下:
    [锚文本](quicker:runaction:quicker动作ID?page=页码;comment=ID;path=PDF文件路径
  3. 将剪贴板中的 markdown 链接粘贴到思源笔记等软件中
  4. 点击该链接,会启动 quicker 并将 page=页码;comment=ID;path=PDF文件路径 等参数传送给 quicker 动作
  5. quicker 动作根据 page=页码;comment=ID;path=PDF文件路径 等参数生成 /A page=页码;comment=批注ID "PDF文件路径" 格式的命令行参数,动作调用命令行工具将参数传给 PDFXEdit.exe
  6. PDFXEdit.exe 打开 PDF 文件并跳转到指定注释。

外链

注意事项

  1. 由于链接中包含了文件路径信息,如果 PDF 文件在多台电脑上同步的话,要保持路径一致,或者使用虚拟驱动器使路径一致,可使用这个 quicker 动作来添加虚拟驱动器:虚拟驱动器管理 - by 浅沧 - 动作信息 - Quicker (getquicker.net)
  2. 由于电脑重启会导致虚拟驱动器失效,请将该动作设置为开机自启动,用法详见:利用虚拟驱动器与第三方同步软件管理思源笔记附件 - 知乎 (zhihu.com)
  3. 动作使用了从外部链接启动 quicker 的功能,这是 quicker 付费功能。目前还没想到其他方式,有的话可以告诉我。
  4. 由于启动参数包含了 PDF 页码,请勿增加或删除 PDF 文件页面。
  5. 需要的 PDF-XChange Editor 中开启如下设置:文件 → 首选项 → 注释 → 将所选文本复制到高亮、删除线和下划线注释弹窗

image

小尾巴

目前的方案有个比较烦人的地方:PDF-XChange Editor 中会有弹窗一闪而逝,这是为了复制信息的不得已之举,有更好的解决方案麻烦告诉我。

弹窗的由来:

PDFXEdit.exe 需要指定页码、注释 ID 和文件路径才能打开指定文件、跳转到指定注释。页码和文件路径可以通过内置宏的方式获得,但是注释 ID 目前只找到了 javascript API 的方式。js API 不支持操作剪贴板,无法将相关信息进行输出,js 的执行结果也只能输出到软件内置的 js 控制台,无法输出到外部。所以现在使用了 response 弹窗来输出信息。

有更好的解决方案吗?

  • 思源笔记

    思源笔记是一款隐私优先的个人知识管理系统,支持完全离线使用,同时也支持端到端加密同步。

    融合块、大纲和双向链接,重构你的思维。

    25491 引用 • 105421 回帖
  • Quicker

    Quicker 您的指尖工具箱!操作更少,收获更多!

    37 引用 • 157 回帖
  • PDF
    30 引用 • 45 回帖 • 1 关注

相关帖子

欢迎来到这里!

我们正在构建一个小众社区,大家在这里相互信任,以平等 • 自由 • 奔放的价值观进行分享交流。最终,希望大家能够找到与自己志同道合的伙伴,共同成长。

注册 关于
请输入回帖内容 ...
  • Achuan-2 via Android

    建议用 zotero 阅读书籍文献 pdf 吧,用高级 pdf 编辑器来编辑 pdf 吧,这并不冲突吧

    zotero 复制标注自带链接跳转(粘贴到思源需要粘贴为纯文本才有链接,或者 zotero 对粘贴到富文本设置进行修改,就可以默认粘贴有链接)

    zotero 保存批注到 pdf 也是可以的,我记得是用打印功能吧

    zotero 现在还能导入 epub,还能剪藏网页快照

    zotero 支持 webdav 同步

    或者 bookxnote pro 也不错,就是没有 zotero 的文献信息抓取(两年前用的,不知道现在有不)

    2 回复
  • qiancang

    我需要经常打开企业微信同事发来的 PDF 文件,zotero 没法作为系统默认阅读器双击打开文件,之前搜了一下也没找到方法,放弃了。

    我需要的是阅读器,并不需要文献管理器。

    2 回复
  • 哦好的,不过我认为 zotero 用来管理 pdf 也挺好的,你用高级 pdf 编辑器,既然要用批注链接,也要找一个文件夹把 pdf 丢进去,不可能就放在微信的文件夹里吧,用 zotero 就无脑直接丢进去好了,需要再进行分类,一个文件还能多分类。不过看个人选择了,就建议下。我现在就是 Acrobat+zotero,使用 zotero 最大的问题在我这就只是不支持加 pdf 书签,我还得用 Acrobat 加书签,不过也能顶顶。

    Acrobat 也能 OCR、还能校正倾斜的页面。中文 OCR 不建议用 Tesseact,太慢了,识别率还不高,ABBYY OCR 也不错,但是我发现会有损 pdf 的清晰度(可能我不会用),我现在比较推荐用 Umi-OCR,OCR 贼快,GitHub 开源,调用 paddle OCR。

    复制批注带链接的设置在下面。

    Clip20240514195637.png

    如果要设置复制批注带链接的文本模板,参考官方文档 note_templates [Zotero Documentation]

    2 操作
    Achuan-2 在 2024-05-14 20:14:27 更新了该回帖
    Achuan-2 在 2024-05-14 20:10:50 更新了该回帖
  • wobuzhidao

    zotero 和 bookxnote 批注要是能增量同步到思源就完美了

  • 对批注要求很低 只需要最简单的就行 但是对书记管理和同步要求很高怎么办 有啥好用的推荐吗