gpt4 book ai didi

java - FOP apache - 支持希伯来字母

转载 作者:塔克拉玛干 更新时间:2023-11-03 05:21:47 29 4
gpt4 key购买 nike

最近几天我一直在调查 FOP apache 中对希伯来字母的支持用于生成 PDF 文件的项目。

之前看到那个有问题,不知道解决了没有?

如果有支持,有人可以向我展示/重定向到简单的示例,给我提供带有希伯来字母的 XSL-FO 文件,当使用 FOP 时,PDF 会正确生成(清晰且不会被订单字母反转)。

非常感谢您的回答。这件事真的很困扰我,因此我考虑转向 IText...

最佳答案

您要寻找什么样的样本?对我来说很好......

 <fo:list-item><fo:list-item-label end-indent="label-end()"><fo:block>Hebrew</fo:block></fo:list-     item-label>
<fo:list-item-body start-indent="body-start()"><fo:block xml:lang="he"><fo:bidi-override
unicode-bidi="embed" direction="rtl">כאשר העולם רוצה לדבר, הוא מדבר ב־Unicode</fo:bidi-
override></fo:block></fo:list-item-body></fo:list-item>

如果您使用 bidi-override 和 direction,它工作正常。我在 RenderX、Antennahouse 和 Apache FOP 中对此进行了测试,结果是一样的。

顶部图像是 Antennahouse,中间是 RenderX,底部是 Apache FOP。

根据您在下面提出的问题,使用 direction rtl 和 bidi-override 是因为该句子包含混合英语和希伯来语。如果您只有希伯来语,它的格式应该正确。以所有三种方式使用 FOP 查看此图像。中间版本不正确,因为它需要这些属性。

这是这个的完整示例:

    <fo:root xmlns:fo="http://www.w3.org/1999/XSL/Format">
<fo:layout-master-set>
<fo:simple-page-master master-name="PageMaster" margin="25mm" page-width="8.5in" page-height="11in" >
<fo:region-body margin="10mm"/>
<fo:region-before extent="6mm" display-align="center"/>
<fo:region-after extent="6mm" display-align="center"/>
</fo:simple-page-master>
</fo:layout-master-set>
<fo:page-sequence master-reference="PageMaster">
<fo:flow flow-name="xsl-region-body" line-height="1.7" font-family="Arial Unicode MS">
<fo:block>Mixed English and Hebrew with Override</fo:block>
<fo:block xml:lang="he"><fo:bidi-override unicode-bidi="embed" direction="rtl">כאשר העולם רוצה לדבר, הוא מדבר ב־Unicode</fo:bidi-override></fo:block>
<fo:block>Mixed English and Hebrew no Override</fo:block>
<fo:block>כאשר העולם רוצה לדבר, הוא מדבר ב־Unicode</fo:block>
<fo:block>Hebrew only no Override</fo:block>
<fo:block>כאשר העולם רוצה לדבר, הוא מדבר ב־</fo:block>
</fo:flow>
</fo:page-sequence>
</fo:root>

FOP showing different ways you can render

All three major FO renderers

关于java - FOP apache - 支持希伯来字母,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18818185/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com