如何解决找出哪些pdf文件缺少字体
我有10.000个pdf,其中一些缺少字体。我已经找到了如何使用ghostscript将缺少的字体添加到pdf中的方法:
>gswin64 -sFONTPATH=path_to_fonts -o path_topdf_2 -sDEVICE=pdfwrite -dPDEFSETTINGS=/prepress path_to_pdf
但是,这也会更改不会引起任何问题的pdf文件,然后再调整它们的大小。在生成10.000个新pdf之前,我想遍历一个循环,找出哪个pdf不包含某种字体,然后仅重新创建这些pdf。是否可以使用ghostscript或C#库?
解决方法
您可以使用Xpdf中的pdffonts.exe
命令行工具。
示例输出:
pdffonts -loc zzz.pdf
Config Error: No display font for 'Symbol'
Config Error: No display font for 'ZapfDingbats'
name type emb sub uni prob object ID location
---------------------------------------------- ----------------- --- --- --- ---- --------- --------
FPLBLO+TimesNewRomanPS-BoldMT Type 1C yes yes yes 1362 0 embedded
FPLBNP+TimesNewRomanPSMT Type 1C yes yes yes 1363 0 embedded
FPLCEN+Arial-BoldMT Type 1C yes yes yes 1833 0 embedded
FPLCHN+TimesNewRomanPS-ItalicMT Type 1C yes yes yes 1844 0 embedded
编写脚本或C#
程序,为每个文件调用pdffonts.exe
并检查输出中是否缺少字体。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。