我在无头虚拟Ubuntu服务器上运行eXist。有趣的是默认情况下启用了XSL-FO模块 ,可能是因为我在安装eXist之前已将其安装在服务器上。
我使用驻留在应用程序集合中的配置文件。有趣的是它使用(并且只允许)系统路径,并且不可能使用集合中的资源(例如,我已经尝试加载字体并从配置指向它们但是没有用 - 我必须使用它作为就在我没有使用eXist的情况下使用它。一切都有效但连字符。没有eXist,连字符也可以。
<fop version="1.0">
<hyphenation-base>/home/honza/.fop/hyph</hyphenation-base>
<hyphenation-pattern lang="cs" country="CZ">cs</hyphenation-pattern>
<renderers>
<renderer mime="application/pdf">
<fonts>
<font kerning="yes" embed-url="/home/honza/.fonts/libertine/LinLibertine_Rah.ttf" embedding-mode="subset">
<font-triplet name="LinLibertine" style="normal" weight="normal"/>
</font>
<font kerning="yes" embed-url="/home/honza/.fonts/libertine/LinLibertine_RIah.ttf" embedding-mode="subset">
<font-triplet name="LinLibertine" style="italic" weight="normal"/>
</font>
<font kerning="yes" embed-url="/home/honza/.fonts/libertine/LinLibertine_RBah.ttf" embedding-mode="subset">
<font-triplet name="LinLibertine" style="normal" weight="bold"/>
</font>
<font kerning="yes" embed-url="/home/honza/.fonts/libertine/LinLibertine_RBIah.ttf" embedding-mode="subset">
<font-triplet name="LinLibertine" style="italic" weight="bold"/>
</font>
<font kerning="yes" embed-url="/home/honza/.fonts/libertine/LinBiolinum_Rah.ttf" embedding-mode="subset">
<font-triplet name="LinBiolinum" style="normal" weight="normal"/>
</font>
<font kerning="yes" embed-url="/home/honza/.fonts/libertine/LinBiolinum_RIah.ttf" embedding-mode="subset">
<font-triplet name="LinBiolinum" style="italic" weight="normal"/>
</font>
<font kerning="yes" embed-url="/home/honza/.fonts/libertine/LinBiolinum_RBah.ttf" embedding-mode="subset">
<font-triplet name="LinBiolinum" style="normal" weight="bold"/>
</font>
</fonts>
</renderer>
</renderers>
</fop>
我知道hyphenation-base
是正确的起点,但由于eXist,无法确定它是否应以某种特殊的方式设置。
答案 0 :(得分:2)
如果您要在eXist中调用FOP,则需要将fop-hyph.jar
中的连字符jar($EXIST_HOME/extensions/modules/lib/
)与fop.jar
一起存储。那么您在<hyphenation-base>
文件中根本不需要fop.conf
属性 - <hyphenation-pattern>
就足够了。