我正在尝试使用 update_info
命令,以便使用 pdftk
和 powershell 将一些书签添加到现有 pdf 的元数据中。
我首先将元数据转储到文件中,如下所示:
pdftk .\test.pdf dump_data > test.info
然后,我通过添加书签来编辑 test.info
文件,我相信我使用了正确的语法。我保存 test.info
文件并尝试使用 update_info
将元数据写入新的 pdf 文件:
pdftk test.pdf update_info test.info 输出 out.pdf
不幸的是,我收到如下警告:
pdftk Warning: unexpected case 1 in LoadDataFile(); continuing
out.pdf
已生成,但不包含书签。为了确保这不是语法问题,我还通过简单地覆盖相同的元数据来运行它,而无需编辑元数据文件。我仍然收到同样的警告。
为什么会出现此警告?为什么我生成的 pdf 中没有写入书签?
最佳答案
以这种方式使用重定向
pdftk .\test.pdf dump_data > test.info
将通过构建错误的文件结构导致此已知问题,因此更改为
pdftk .\test.pdf dump_data output test.info
此外,检查您的更改是否正确平衡(并且没有异常字符),然后以相同的编码保存编辑后的输出文件。
注意:-您可能需要考虑
使用 dump_data_utf8
和 update_info_utf8
以便正确显示拉丁语以外的脚本中的字符(例如东方 CJK)
关于windows - pdftk update_info 命令发出我不明白的警告,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/70753672/