学习笔记063——通过使用 aspose-words 将 Word 转 PDF 时,遇到的字体改变以及乱码问题

文章目录

1、问题描述:

Java项目中,有个需要将word转pdf的需求。本人通过使用aspose-words来转换的。在Windows中,转换是完全正常的。但是当部署到服务器时,会出现转换生成的pdf出现字体改变,甚至乱码的问题。

原来Word中的字体:

项目部署到Ubuntu服务器中后,生成的pdf字体:

可以看到字体变了。

经过一段时间排查,发现是由于Ubuntu服务器缺少对应的字体库导致文件转换出现字体变化或者乱码的。

2、解决方法:

可以将Windows中的字体库复制到服务器中。

首先将Windows中 C:\Windows\Fonts 目录中的

所有字体复制到Ubuntu的 /usr/share/fonts/win目录下

bash 复制代码
# win是我自己创建的
/usr/share/fonts/win

执行命令:

bash 复制代码
# 进入到win目录,修改权限
cd /usr/share/fonts/win
chmod 777 *.ttf


# 进入到fonts目录,安装字体
cd /usr/share/fonts
sudo mkfontscale
sudo mkfontdir 
sudo fc-cache -fv

# 刷新
source /etc/profile

# 查看所有字体 
fc-list

# 查看所有中文字体
fc-list :lang=zh

安装完成后,最好重启服务器。(本人就是未重启,字体没有生效)

🆗!生命不息,折腾不止!

相关推荐
10x10几秒前
# Docker 使用笔记:重新理解镜像、容器与数据持久化
后端
Rover.x1 分钟前
Spring国际化语言切换不生效
java·后端·spring
IT_陈寒14 分钟前
Redis 7个性能优化技巧,让我们的QPS从5k提升到20k+
前端·人工智能·后端
Mark_Hide27 分钟前
学习笔记5
笔记·学习
百锦再30 分钟前
金仓数据库提出“三低一平”的迁移理念
开发语言·数据库·后端·python·rust·eclipse·pygame
ZHE|张恒1 小时前
深入理解 Spring 原理:IOC、AOP 与事务管理
java·后端·spring
Larry_Yanan1 小时前
QML学习笔记(五十一)QML与C++交互:数据转换——基本数据类型
c++·笔记·学习
expect7g1 小时前
Flink-To-Paimon 读取机制
大数据·后端·flink
kida_yuan1 小时前
【从零开始】18. 持续优化模型微调
后端·llm