6

我已经使用 BIRT IDE 创建了一个 rptdesign 文件。此文件内容为 Arial 字体,当我在 Windows 中将报告导出为 PDF 时,它工作正常。

我使用默认的 viewerServlet 创建报告。但是当我将报告移动到 linux 系统时,报告中的所有内容都以 Times New Roman 字体显示,而不是 PDF 文件中的 Arial。

然后我将 Arial.ttf 文件复制到 /var/font/truetype 并将以下行添加到 platform/plugins/org.eclipse.birt.report.engine.fonts_2.3.2.r232_20090202/fontsConfig.xml

    <font-paths>
        ---------------
        ---------------
        ---------------
        <path path="/var/font/truetype" />
    </font-paths>

添加此行后,所有内容都以 Arial 字体出现,但是粗体的内容似乎被压缩并且看起来很丑陋。

有没有人遇到过这个问题并有解决方案?

谢谢问候,阿伦

4

5 回答 5

2

这是我的 fontsConfig_pdf.xml 文件

<font>
<font-aliases>
    <mapping name="sans-serif" font-family="Arial" />
    <mapping name="serif" font-family="Times-Roman" />
    <mapping name="monospace" font-family="Courier" />
</font-aliases>
<font-encodings>
    <encoding font-family="Times-Roman" encoding="Cp1252" />
    <encoding font-family="Helvetica" encoding="Cp1252" />
    <encoding font-family="Courier" encoding="Cp1252" />
    <encoding font-family="Zapfdingbats" encoding="Cp1252" />
    <encoding font-family="Symbol" encoding="Cp1252" />
    <encoding font-family="STSong-Light" encoding="UniGB-UCS2-H" />
    <encoding font-family="STSongStd-Light" encoding="UniGB-UCS2-H" />
    <encoding font-family="MHei-Medium" encoding="UniCNS-UCS2-H" />
    <encoding font-family="MSung-Light" encoding="UniCNS-UCS2-H" />
    <encoding font-family="MSungStd-Light" encoding="UniCNS-UCS2-H" />
    <encoding font-family="HeiseiMin-W3" encoding="UniJIS-UCS2-H" />
    <encoding font-family="HeiseiKakuGo-W5" encoding="UniJIS-UCS2-H" />
    <encoding font-family="KozMinPro-Regular" encoding="UniJIS-UCS2-H" />
    <encoding font-family="HYGoThic-Medium" encoding="UniKS-UCS2-H" />
    <encoding font-family="HYSMyeongJo-Medium" encoding="UniKS-UCS2-H" />
    <encoding font-family="HYSMyeongJoStd" encoding="UniKS-UCS2-H" />
</font-encodings>
<font-paths>
        <path path="/var/fonts/truetype"/>
</font-paths>
<composite-font name="all-fonts">
    <font font-family="Times-Roman" catalog="Western" />
    <font font-family="MSung-Light" catalog="Chinese" />
    <font font-family="HeiseiKakuGo-W5" catalog="Japanese" />
    <font font-family="HYGoThic-Medium" catalog="Korean" />
</composite-font>
</font>
于 2009-07-07T12:46:54.147 回答
0

尝试明确说明您的字体路径,如下所示:

<font-paths>
   <path path="/var/font/truetype/arial.ttf" />
</font-paths>

设置此属性 (font-paths) 会导致默认字体目录被忽略,而仅支持此集中的路径。这将使 Arial 成为 PDF 的唯一可用字体。要包含默认字体(TNR、Courier 等),请将 eclipse 插件下的默认路径(org.eclipse.birt.report.engine.fonts)添加到您的字体路径条目中。

您还可以选择仅将 Arial.ttf 添加到默认目录并从字体路径中删除所有条目并以这种方式选择 Arial 类型。无论哪种方式都应该有效。

祝你好运。

于 2009-06-29T19:59:34.223 回答
0

我花了几个小时寻找这个:

export BIRT_FONT_PATH=/usr/share/fonts/truetype

执行此操作并完成!

于 2014-08-27T20:43:50.237 回答
0

然后我将 Arial.ttf 文件复制到 /var/font/truetype

Arial.ttf 仅包含字体的普通版本。对于粗体、斜体和斜体粗体,有不同的文件(arialbd.ttf 等)。也复制这些。

于 2015-01-29T07:12:02.457 回答
0

谁能告诉我linux中的Arial字体是否有任何问题,如果字符设置为粗体

一切对我们来说都很好。下面是我的 fontsConfig.xml 补丁:

<font-aliases>
    <mapping name="sans-serif" font-family="Arial" />
    ...
</font-aliases>
<font-paths>
    <path path="fonts"/>
</font-paths>

放入字体文件夹 arial.ttf 和 arial.xml 文件。

于 2009-07-07T07:23:54.237 回答