断字不适用于 dita-ot 2.5.1 和 Apache FOP

Hyphenation doesn´t work with dita-ot 2.5.1 and Apache FOP

我使用 dita-ot 渲染为 pdf。 最近,我从 dita-ot 1.8.M2 升级到 2.5.1 更新我的 pdf 插件是一项相当大的工作,但我唯一无法正常工作的是断字。

我按照 Apache website.

中的描述完成了所有操作

相关详细说明:

"Download the precompiled JAR from OFFO and place it either in the {fop-dir}/lib directory, or in a directory of your choice (and append the full path to the JAR to the environment variable FOP_HYPHENATION_PATH)."

这就是 dita-ot 1.8.M2 的工作方式,其中 {fop-dir} 被放置在 "org.dita.pdf2" 插件中。 现在,{fop-dir} 在 "org.dita.pdf2.fop" 插件中。也许就是这个原因,为什么"fop-hyph.jar"明明没有被进程找到呢?但是环境变量呢?

有人有解决办法吗?

我自己找到了解决方案:我只是将属性 <xsl:attribute name="hyphenate">true</xsl:attribute> 添加到属性文件 commons-attr.xsl.

中的属性集 common.block

当我将使用旧 dita-ot(带连字符)生成的 FO 文件与新 dita-ot 生成的 FO 文件进行比较时,我发现不是 FOP 或 jar 文件是原因。缺少的是每个块中的 hyphenate=true 属性。

感谢您的耐心等待!