Jasper reports 为字段外的文本设置了textElement标记样式

Jasper reports 为字段外的文本设置了textElement标记样式,jasper-reports,Jasper Reports,我想从数据库的结果中预生成样式文本: 应该是 Red Text Black Text 而不是 <font color=\"red\">Red Text</font> Black Text 红色文本黑色文本 当我使用fix textFieldExpression时,一切都可以正常工作,但当使用 <![CDATA[$F{TEXT}]]> 它只显示我从数据库中获取的文本。 将“评估时间”设置为“波段”并没有改变任何事情 附加了一个简短示例的jrxml文

我想从数据库的结果中预生成样式文本:

应该是

Red Text Black Text
而不是

<font color=\"red\">Red Text</font> Black Text
红色文本黑色文本
当我使用fix textFieldExpression时,一切都可以正常工作,但当使用

<![CDATA[$F{TEXT}]]> 

它只显示我从数据库中获取的文本。 将“评估时间”设置为“波段”并没有改变任何事情

附加了一个简短示例的jrxml文件:

<?xml version="1.0" encoding="UTF-8"?>
<!-- Created with Jaspersoft Studio version 6.10.0.final using JasperReports Library version 6.10.0-unknown  -->
<jasperReport xmlns="http://jasperreports.sourceforge.net/jasperreports" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://jasperreports.sourceforge.net/jasperreports http://jasperreports.sourceforge.net/xsd/jasperreport.xsd" name="Fields_Styled" pageWidth="595" pageHeight="842" columnWidth="555" leftMargin="20" rightMargin="20" topMargin="20" bottomMargin="20" uuid="e4874d20-5d51-429a-81c9-a12ce399a0b8">
    <property name="com.jaspersoft.studio.data.defaultdataadapter" value="Oracle Local"/>
    <property name="com.jaspersoft.studio.data.sql.tables" value=""/>
    <queryString>
        <![CDATA[select '<font color="red">Red Text</font> Black Text' text from dual
        union all select '<font color="red">Red Text  2</font> Black Text 2 <QUARTAL>' text from dual
        union all select '<font color="red">Red Text  3</font> Black Text 3' || lpad('XX',200,'YYYY AB') text from dual
        union all select '<font color="red">Red Text  4</font> Black Text 4' || lpad('XX',3900,'YYYY AB') text from dual]]>
    </queryString>
    <field name="TEXT" class="java.lang.String">
        <property name="net.sf.jasperreports.sql.field.column.name" value="TEXT"/>
    </field>
    <background>
        <band splitType="Stretch"/>
    </background>
    <title>
        <band height="80" splitType="Stretch">
            <textField>
                <reportElement x="10" y="10" width="100" height="30" uuid="8142a933-8456-4ad5-bf30-57872e0be50a"/>
                <textElement markup="styled"/>
                <textFieldExpression><![CDATA["<font color=\"red\">Red Text</font> Black Text"]]></textFieldExpression>
            </textField>
        </band>
    </title>
    <detail>
        <band height="125" splitType="Stretch">
            <textField>
                <reportElement x="10" y="20" width="290" height="30" uuid="9b43d761-db44-48a8-ade1-93c8e146f9d9"/>
                <textElement markup="styled"/>
                <textFieldExpression><![CDATA[$F{TEXT}]]></textFieldExpression>
            </textField>
        </band>
    </detail>
</jasperReport>


删除\有助于我的示例。。但查询结果不是更长的字符串…得到我的错误。。。如果有些标签没有被替换,比如在最后的字符串中会被替换的标签