POI word转pdf乱码问题处理

1.使用poi 转换word文档成pdf

导入依赖

java 复制代码
       <dependency>
            <groupId>com.aspose</groupId>
            <artifactId>words</artifactId>
            <version>16.8.0</version>
        </dependency>

2.代码实现:

java 复制代码
    @SneakyThrows
    public void wordToPdf(String docPath, String pdfPath) {
        Document doc = new Document(docPath);
        doc.save(pdfPath, SaveFormat.PDF);
    }

pdf下载后出现乱码问题

问题是linux服务器缺少windows环境下的字体文件

3.复制windows环境字体环境到linux下面

3.1 复制windows该路径下的字体文件,打包压缩到fonts.zip文件夹

3.2 进入 /usr/shared/fonts/路径下,新建my-fonts文件夹

java 复制代码
mkdir my-fonts

3.3 上传fonts.zip文件到该目录并解压

bash 复制代码
unzip fonts.zip 

3.4 依次在改了目录下执行命令

bash 复制代码
# mkfontscale
# mkfontdir

3.5 使用命令:vi /etc/fonts/fonts.conf 修改配置文件,添加:<dir>/usr/share/fonts/my-fonts</dir>

添加后:

然后运行:fc-cache

3.6 授权

bash 复制代码
## chmod 777 /usr/share/fonts/my-fonts**

## chmod 755 /usr/share/fonts/my-fonts/***

3.7 查看

bash 复制代码
# fc-list :lang=zh 

先确定乱码部分的字体(simsun.ttf)是不是在linux服务有

3.8 如果还是没有效果,则重启服务器生效

相关推荐
Flittly1 分钟前
【SpringAIAlibaba新手村系列】(7)结构化输出与对象映射
java·spring boot·agent
用户79140679683937 分钟前
springmvc的核心组件有哪些
后端
用户79140679683937 分钟前
Spring Boot 自动配置的完整启动流程
后端
元俭9 分钟前
【Eino 框架入门】Interrupt/Resume 中断恢复:给 Agent 加个"审批关卡"
后端
未来龙皇小蓝12 分钟前
Java安全通信:RSA签名 + AES混合加密详解
java·开发语言·安全·web安全
元俭12 分钟前
【Eino 框架入门】Graph Tool 复杂工作流:把多步骤流水线封装成一个 Tool
后端
XDOC12 分钟前
使用docx4j将Word文档转换为PDF
java
她的男孩13 分钟前
ForgeAdmin 更新:新增第三方登录认证 + 数据字段脱敏两大企业级特性
前端·后端
小陈工13 分钟前
python Web开发从入门到精通(五)别重复造轮子!Python标准库中的高效工具大揭秘
后端
helx8214 分钟前
基于Spring Boot 3 + Spring Security6 + JWT + Redis实现登录、token身份认证
spring boot·redis·spring