pdfbox或icepdf转换PDF为图片时,中文乱码处理

Posted 悟能的师兄

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了pdfbox或icepdf转换PDF为图片时,中文乱码处理相关的知识,希望对你有一定的参考价值。

一:追查原因

出现这个原因很简单,必定是你的PDF是自己编辑的,否则不会出现此问题。而且你的Linux服务器必定没有你自己编辑的中文字体。

如:我的PDF编辑用了楷体,Linux上没有此字体就GG了

二:处理问题

处理此问题极其简单,我们将Windows上面的字体写入Linux上然后加载进系统即可。

步骤如下:

1:Windows系统的字体文件在:C:\\Windows\\Fonts

2:Linux系统字体文件一般在:/usr/share/fonts/

3:我们在Linux 字体库 /usr/share/fonts/ 新建文件夹:myFonts

4:将Windows所有字体一把全部传过去,Linux系统字体库中:/usr/share/fonts/myFonts/

我喜欢简单粗暴,毕竟不知道PDF到底用了啥字体.

5:Linux需要加载我们字体,命令如下:

扫描所有字体,创建字体文件夹、加载字体缓存至系统
[root@iZbp1f0xuq9rc41s6gdvfyZ /]# mkfontscale
[root@iZbp1f0xuq9rc41s6gdvfyZ /]# mkfontdir
[root@iZbp1f0xuq9rc41s6gdvfyZ /]# fc-cache -fv 

假如你的命令执行不了,CentOS 请如下操作

# 使mkfontscale和mkfontdir命令正常运行
[root@iZbp1f0xuq9rc41s6gdvfyZ /]# yum install mkfontscale 
# 使fc-cache命令正常运行。如果提示 fc-cache: command not found
[root@iZbp1f0xuq9rc41s6gdvfyZ /]# yum install fontconfig

6:记得重启你的java服务就可以了,因为要重新加载系统调用资源

以上是关于pdfbox或icepdf转换PDF为图片时,中文乱码处理的主要内容,如果未能解决你的问题,请参考以下文章

icepdf和pdfbox转pdf文档为图片

pdfboxicepdf工具实现pdf转图片

pdfboxicepdf工具实现pdf转图片

icepdf将PDF电子发票转换成PNG图片出现金额错行(java)?

在Java代码中使用pdfBox将PDF转换为图片

JAVA使用pdfbox将pdf转换成图片