1、首先要考虑为什么会出现这个问题呢,在windows 环境下是正常的,在linux 环境下就有问题了标签:linux,document,word,Linux,Spire,字体,PDF,Word,Document From: https://www.cnblogs.com/AutumnSilence/p/17141280.html
2、问题原因:Spire word转pdf 会依赖环境字段,如果文档中使用字体在linux环境上没有的话,转换的时候会默认字段,所以导致了转换完的pdf字体不一样了
3、解决方法:
第一步:linux 上安装相对应的字体
字体安装参考:(15条消息) Linux安装宋体_linux 宋体_朽木要自雕的博客-CSDN博客
第二步:判断环境,使用环境下的字体
//windows 环境下
if(System.getProperty("os.name").toLowerCase().contains("windows")){
Document word = new Document();
word.loadFromFile(filePath);
word.saveToFile(filePdf, FileFormat.PDF);
//word.saveToStream(stream, FileFormat.PDF);
word.close();
//return stream;
// 保留PDF文件后,删除原始文件
}else {
//linux 环境下
Document document = new Document();
document.loadFromFile(filePath);
//加载字体文件夹fonts
PdfDocument.setCustomFontsFolders("/usr/share/fonts/chinese");
document.saveToFile(filePdf, com.spire.doc.FileFormat.PDF);
document.close();
}