Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/jpa/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Utf 8 在生成的pdf报告中显示字符平方米(\u33a1)_Utf 8_Jasper Reports_Export To Pdf - Fatal编程技术网

Utf 8 在生成的pdf报告中显示字符平方米(\u33a1)

Utf 8 在生成的pdf报告中显示字符平方米(\u33a1),utf-8,jasper-reports,export-to-pdf,Utf 8,Jasper Reports,Export To Pdf,我正在为jasper pdf报告使用以下代码来显示字符M平方(\u33a1) ... 对于这段代码,我无法在PDF中看到unicode字符。它只是一片空白。但在XLSX中,我可以看到角色。 我尝试了以下几点: 删除PDF编码 设置ispdfedded=“false” 但是没有运气 更新:看起来,我使用的自定义字体不支持平方米字符。我无法添加新字体或更新现有自定义字体。但是我可以为那个特殊的角色使用任何字体或内置字体。如何使用内置字体实现这一点 我试过: fontName=“Courier”p

我正在为jasper pdf报告使用以下代码来显示字符M平方(\u33a1)


...
对于这段代码,我无法在PDF中看到unicode字符。它只是一片空白。但在XLSX中,我可以看到角色。 我尝试了以下几点:

  • 删除PDF编码
  • 设置ispdfedded=“false”
  • 但是没有运气

    更新:看起来,我使用的自定义字体不支持平方米字符。我无法添加新字体或更新现有自定义字体。但是我可以为那个特殊的角色使用任何字体或内置字体。如何使用内置字体实现这一点

    我试过:

    fontName=“Courier”pdfFontName=“Courier”
    jasper的内置字体支持该字符,但由于找不到字体,所以出现了错误。

    这里的主要问题是\u33a1是扩展的ASCII unicode。大多数免费字体都不支持这一点。因此,我使用了英文“m”字符,后跟上标2 unicode\u00b2,而不是这个平方m,这几乎适用于所有字体


    \u33a1->m\u00b2

    是否使用字体扩展?是。我刚知道我使用的字体扩展不支持unicode字符。如果没有当前丢弃的字体,如何使用其他字体?有什么解决办法吗?
    <?xml version="1.0" encoding="UTF-8"?> 
    ...
    
    <textField isStretchWithOverflow="true">
                <reportElement x="0" y="0" width="609" height="20" uuid="df8665ef-2226-4aaa-bd04-09805582eaef"/>
                <textElement verticalAlignment="Middle">
                    <font fontName="SomeCustFont" size="20" pdfEncoding="Cp1252" isPdfEmbedded="true"/>
                </textElement>
                <textFieldExpression><![CDATA["Squared M : \u33a1"]]></textFieldExpression>
            </textField>