无法在BIRT生成的PDF中显示印地语(Unicode)字符

无法在BIRT生成的PDF中显示印地语(Unicode)字符,pdf,unicode,fonts,birt,Pdf,Unicode,Fonts,Birt,BIRT无法在生成的PDF文件中呈现印地语字符。同样的设计文件,当呈现为Word文档、HTML或任何其他格式时,我能够看到unicode字符 我在设计文件中将Arial Unicode MS设置为字体类型,并尝试使用google translate中的几个示例。如果我遗漏了什么,请告诉我 谢谢。最有可能的是BIRT找不到正确的字体文件 您必须正确配置pdf字体(请参见.file fontsconfig.xml) 我对西里尔文和中文字体也有类似的问题 我在文件中修复的内容: ... <

BIRT无法在生成的PDF文件中呈现印地语字符。同样的设计文件,当呈现为Word文档、HTML或任何其他格式时,我能够看到unicode字符

我在设计文件中将Arial Unicode MS设置为字体类型,并尝试使用google translate中的几个示例。如果我遗漏了什么,请告诉我


谢谢。

最有可能的是BIRT找不到正确的字体文件

您必须正确配置pdf字体(请参见.file fontsconfig.xml)

我对西里尔文和中文字体也有类似的问题

我在文件中修复的内容:

...
    <font-paths>
        <path path="fonts" />

        <!--path path="C:/windows/fonts" />
        <path path="d:/windows/fonts" />
        ...
        <path path="/var/lib/defoma/x-ttcidfont-conf.d/dirs/TrueType" /-->
</font-paths>
。。。
创建字体文件夹并放置所有必要的字体(一个有点棘手的问题是字体文件夹必须在哪里。这取决于您如何使用BIRT)


或者,您可以将正确的字体文件放入正在使用的JRE/lib/fonts文件夹中。

如果您正在使用JavaFx桌面应用程序,它将起作用。 如果使用BIRT查看器部署时使用
fontsConfig.xml
,因为所有配置都捆绑在
org.eclipse.BIRT.runtime\u VERSION-XXX.jar中

因此,您可以使用这种方法,只需覆盖
fontConfig_Pdf.xml
文件并将您的字体添加到此文件中

<composite-font>
<font font-family="mangal" catalog="Western"/>
</composite-font>
此行将有助于更改运行时字体和配置
复制你的印地语字体并粘贴到
jre/lib/fonts
C:/windows/fonts
中也可能是PDF,看看这个类似的问题,在Devanagari(印地语)字体上的韩语新问题,因为PDFI正在尝试直接从eclipse运行报告->以PDF格式查看报告。我浏览了整个互联网,最后弄不清楚我的fontConfig.xml是否正确。我使用的字体位于windows字体文件夹中,路径位于eclipse/plugins/org.eclipse.birt.report.engine.fonts_4.2.1.v20120820文件夹下的配置xml中。请验证所有这些是否正确。只需尝试将正确的字体文件复制到JRE/lib/fonts文件夹,然后重试。
 EngineConfig conf = null;
 conf.setFontConfig(new File("fontsConfig_pdf_win.xml").toURL());
 conf.setEngineHome("{dir}/birt-runtime-4_4_1/ReportEngine");
 eng = new ReportEngine(conf);