关于 Java 中复杂 PDF 转 JPG 的转换疑问

272 天前
 MrJerry

最近有需求是转换 pdf 到 jpg ,之前一直使用 Apache PdfBox 转换,一直也能满足需求,但最近有复杂的 PDF 文件,转换后,jpg 图片出现乱码情况,想问大佬们有没有其他免费转换的库或者工具能够处理啊 转换前 : 转换后 :

原 pdf 文件: https://www.lanzouw.com/igWLk1t346wb

1802 次点击
所在节点    Java
12 条回复
aflow
272 天前
看起来是没找到对应中文字体,配置下字体信息应该就可以了
wxd21020
272 天前
升级依赖包
Puteulanus
272 天前
我们之前有个项目用 Poppler 转的
ho121
272 天前
盲猜是这个 pdf 没有内嵌中文字体,又没有在系统中找到中文字体,所以就显示方块
MrJerry
272 天前
@wxd21020 用了最新的依赖包,不行呢
zhaoziyuan1989
272 天前
之前用 rust 调用 linux 下的 pdftoppm 实现过类似的需求,缺字体,是会乱码,字体的因素较大。
MrJerry
272 天前
@aflow 配置字体信息需要原字体格式吧,我这边不知道原字体格式,找不到对应字体,又该怎么处理呢
dropdatabase
272 天前
字体问题。你看看 pdf 中的文字是啥字体。Java 运行环境把相关字体加上就行了。
young1ee
271 天前
如果是 Windows 系统下正常,Linux 下不正常,可以把 Windows 字体文件全部复制到 Linux 的字体目录下
moshiyeap100
271 天前
试试看能不能指定一个缺省中文字体,如果找不到字体,就指定一个默认中文字体。
moshiyeap100
271 天前
我写了一个 demo ,能够正常处理,如果有需要可以联系我。绿色 :SnVuemhvdTE4MDkwOWR5
MrJerry
271 天前
问题已处理,升级最新依赖包,换用加载方法解决;发现和 pdfbox 版本还有一定关系,Apache PDFBox3.0 以后版本 PDDocument.load 改成了 Loader.loadPDF ;同样方法,采用 2.x 版本的 PDDocument.load 加载 pdf 转换就会乱码

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/1028212

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX