Linux服务器(centos7)中Word转换PDF,文档出现中文乱码或方格【亲测可用,已解决】

提示:在centos服务器使用aspose.word转换word文件为pdf的时候只有中文乱码或则方格,但是在win服务器上使用可以正常转换。本次文章主要解决字体缺失问题

目录

  • 前言
  • 一、在linux服务器上生成的pdf都是这种格式的
  • 二、分析原因
  • 三、解决方法
  • 四、总结


前言

提示:word转换pdf在服务器上出现中文乱码或者方格状态(主要问题是字体缺失)。

在centos服务器使用aspose.word转换word文件为pdf的时候显示中文乱码,但是在win服务器上使用可以正常转换。


一、在linux服务器上生成的pdf都是这种格式的

Linux服务器(centos7)中Word转换PDF,文档出现中文乱码或方格【亲测可用,已解决】_第1张图片
Linux服务器(centos7)中Word转换PDF,文档出现中文乱码或方格【亲测可用,已解决】_第2张图片

二、分析原因

造成这样的原因是linux缺少字体造成的

三、解决方法

  • 安装字库,将win环境的c:\windows\fonts目录下的全部文件拷贝到生产服务器字体安装目录下,然后执行以下命令更新字体缓存就可以解决了

Linux服务器(centos7)中Word转换PDF,文档出现中文乱码或方格【亲测可用,已解决】_第3张图片

  • 查看linux目前的所有字体
fc-list
  • 查看服务器上目前的所有中文字体
fc-list :lang=zh
  • 找到服务器上字体安装的路径 并进入
cd /usr/share/fonts/
  • 在该路径下面创建win文件夹,并将win环境下的Fonts(利用上传命令或者上传工具)上传到win文件夹下面
mkdir /win 
  • 执行安装字体命令
// 进入目录
cd /usr/share/fonts
// 修改字体文件的权限,使root用户以外的用户也可以使用(不设置权限root以外的用户使用不了)
chmod -R 755 ./win
// 建立字体缓存
mkfontscale
mkfontdir 
fc-cache -fv
  • 执行命令使字体生效
//  使字体生效
source /etc/profile

四、总结

线上环境将word转换成pdf乱码问题,这一个问题加班好久才解决,当然这不是唯一的解决方法,但是解决问题的思路是一样的,这种低级错误记录一下,让自己长点记性!!!!

你可能感兴趣的:(开发的功能,linux,服务器,word,pdf)