如何使用 iReport 在 Jasperserver PDF 中显示“$£Ω€απ⅔”?

How can I display "$£Ω€απ⅔" in Jasperserver PDF using iReport?

我用值

硬编码了一个文本字段
 ":$£Ω€απ⅔:" 

测试这些字符是否会在 PDF 中显示

但它只打印为

:$£€:

我试过将字体更改为 "Symbol",但这并不能解决问题。

注意:我使用的是 iReport 5.5

我在 iReport 中使用 font-extensions 尝试了你的角色,这些是我采取的步骤

  1. 下载(或者在你的电脑上使用)你想要的ttf字体(需要支持汉字),我用的是dejavu-serif.
  2. 安装 iReport or in Jasper soft studio 中的字体(点击链接了解操作方法)

    • 我使用了 iReport 5.6 并设置了 PDF 编码:Idenity-H(水平书写的 unicode)并将字体嵌入到 pdf 中。这是我的 textField

      的代码
      <textField>
          <reportElement x="8" y="15" width="100" height="20" uuid="41dc1200-091f-4799-a1d2-4622f88a0e84"/>
          <textElement>
              <font fontName="DejaVu Serif" size="13"/>
          </textElement>
          <textFieldExpression><![CDATA[":$£Ω€απ⅔:"]]></textFieldExpression>
      </textField>
      
  3. 导出字体扩展(这会创建一个 .jar)

  4. 将 jar 添加到类路径中。
  5. 导出为 pdf 并享受结果。

This is an example of how to use any arbitrary font, if you like to use DejaVu Sans or DejaVu Serif you can just include the jasper report fonts library in classpath, hence these font are already included and mapped in library

我发布了一个类似的问题,上面的技术解决了我的问题,直到有一天我重新启动了 JasperServer 上下文。当我尝试将报告导出为 pdf 时出现 "PDF encoding not found" 错误。

为了解决这个问题,我不得不在 jasperserver 上下文的 lib 文件夹中复制 iText-Asian.jar 和 Font-extension.jar。 "jasperserver/WEB-INF/lib"。完成后重新启动上下文并解决问题。

希望对大家有所帮助。