【问题标题】:Keep font when converting DOCX to PDF using Docx4j使用 Docx4j 将 DOCX 转换为 PDF 时保留字体
【发布时间】:2017-11-02 19:56:20
【问题描述】:

这是将 docx 转换为 pdf

的代码
WordprocessingMLPackage wordMLPackage = WordprocessingMLPackage.load(is);

FOSettings foSettings = Docx4J.createFOSettings();
foSettings.setWmlPackage(wordMLPackage);
Docx4J.toPDF(wordMLPackage, baos);

这里的问题是生成的PDF字体总是Times New Roman,其实不是这样的,docx模板字体其实是不一样的,Garamond。

这里可能缺少什么或错误?

【问题讨论】:

  • 您的系统上是否存在 Garamond 字体?
  • 是的字体已安装在系统中

标签: java pdf fonts docx docx4j


【解决方案1】:

如果系统上未安装字体或未嵌入文档中,MS Word 将执行静默字体替换。要检查您的文档是否发生这种情况,请在 Word 中打开它,转到 Word Options > Advanced > Show Document Content 并按 Font Substitution 按钮。 (字 2007)

如果字体嵌入在文档中,或者您的系统上已经安装了该字体,那么我不知道该告诉您什么,因为理想情况下 docx4j 应该使用该字体。

如果不是这种情况,即 Word 正在使用字体替换(您可以使用上述步骤确定),您可以使用 Word Options > Save > Embed Fonts in File 在文档中嵌入 Garmond 字体。运行您的转换程序并再次检查。

【讨论】:

    猜你喜欢
    • 2012-09-01
    • 2013-11-08
    • 1970-01-01
    • 1970-01-01
    • 2021-01-21
    • 1970-01-01
    • 2019-03-04
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多