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

328 天前
MrJerry  MrJerry

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

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

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