2014-02-24 55 views
1

我想代表碧玉报告阿拉伯语的字体,所以我按照自定义字体扩展方法和添加一个阿拉伯字体作为一个扩展“安达卢斯或宋体的Unicode MS”自定义字体编码

但是,当我尝试

我得到了一个异常

Exception in thread "main" net.sf.jasperreports.engine.JRRuntimeException: Could not load the following font : 
pdfFontName : Helvetica 
pdfEncoding : Identity-H 
isPdfEmbedded : true 

Caused by: ExceptionConverter: java.io.UnsupportedEncodingException: Identity-H 

MY JXML如下

<textElement> 
    <font fontName="Andalus" size="12" pdfEncoding="Identity-H"/> 
</textElement> 

环境设置

  • 碧玉报告4.5
  • Windows 7的
  • JDK jdk1.6.0_17

谁能帮有什么不对的字体或推荐特定的罐子?

回答

1

的问题是,我用它在Japser之前定义的字体名称为“宋体”,所以

  1. 的第一步命名中包含“myfont” 另一个自定义名称的字体,让您请确保您的字体加载到类路径或不

  2. 第二步我按照下面的后第一种方法(硬路),它很好地工作:) That blog post

0

我面对这个问题,它很讨厌这样,使之清楚,一切都在这里,你是如何做到这一点

第一 创建字体通过遵循这一ARABIC & UTF-8

然后

在可能具有阿拉伯语内容的字段或标签上,通过右键单击或在其属性托盘上进入其属性,并进行这些更改

复选框PDF嵌入 从PDF编码中选择Identity-H(Unicode with horizo​​ntal writing) 选择字体Arial如果没有,则将其添加到安装目录中的jasper fonts文件夹并将其添加到设置中的类路径 以PDF模式重新运行...它将起作用