eXist-db XSL-FO – 断字和设置
eXist-db XSL-FO – hyphenation and settings
我 运行 eXist 在无头虚拟 Ubuntu 服务器上。有趣的是 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 的存在,我不知道是否应该以某种特殊方式设置它。
如果您从 eXist 中调用 FOP,则需要将连字符 jar (fop-hyph.jar
) 与 fop.jar
一起存储在 $EXIST_HOME/extensions/modules/lib/
中。那么您的 fop.conf
文件中根本不需要 <hyphenation-base>
属性 - <hyphenation-pattern>
就足够了。
我 运行 eXist 在无头虚拟 Ubuntu 服务器上。有趣的是 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 的存在,我不知道是否应该以某种特殊方式设置它。
如果您从 eXist 中调用 FOP,则需要将连字符 jar (fop-hyph.jar
) 与 fop.jar
一起存储在 $EXIST_HOME/extensions/modules/lib/
中。那么您的 fop.conf
文件中根本不需要 <hyphenation-base>
属性 - <hyphenation-pattern>
就足够了。