如果使用HTML标记突出显示单词的一部分,则Birt会插入额外的空格

时间:2017-07-04 13:47:37

标签: java birt



我在Birt的报告中遇到了以下问题。我希望能够使用HTML标记<b><i><u>等突出显示报告中的文字。 如果我突出整个单词,那么一切正常。但是,如果我只突出显示单词的一部分,那么Birt会用额外的空格分割这样一个单词:

的DataSource:

<data>
    <text>&lt;b&gt;This&lt;/b&gt; is a text. T&lt;b&gt;his&lt;/b&gt; is another text.</text>
</data>

.rptdesign:

<?xml version="1.0" encoding="UTF-8"?>
<report xmlns="http://www.eclipse.org/birt/2005/design" version="3.2.23" id="1">
    <property name="createdBy">Eclipse BIRT Designer Version 4.6.0.v201606072122</property>
    <property name="units">in</property>
    <property name="iconFile">/templates/blank_report.gif</property>
    <property name="bidiLayoutOrientation">ltr</property>
    <property name="imageDPI">96</property>
    <data-sources>
        <oda-data-source extensionID="org.eclipse.datatools.enablement.oda.xml" name="Data Source" id="4">
            <property name="FILELIST">data_sources/test_data_source.xml</property>
        </oda-data-source>
    </data-sources>
    <data-sets>
        <oda-data-set extensionID="org.eclipse.datatools.enablement.oda.xml.dataSet" name="testDataSet" id="5">
            <list-property name="columnHints">
                <structure>
                    <property name="columnName">text</property>
                    <text-property name="heading">text</text-property>
                </structure>
            </list-property>
            <structure name="cachedMetaData">
                <list-property name="resultSet">
                    <structure>
                        <property name="position">1</property>
                        <property name="name">text</property>
                        <property name="dataType">string</property>
                    </structure>
                </list-property>
            </structure>
            <property name="dataSource">Data Source</property>
            <list-property name="resultSet">
                <structure>
                    <property name="position">1</property>
                    <property name="name">text</property>
                    <property name="nativeName">text</property>
                    <property name="dataType">string</property>
                    <property name="nativeDataType">12</property>
                </structure>
            </list-property>
            <xml-property name="queryText"><![CDATA[table0#-TNAME-#table0#:#[/data/text]#:#{text;STRING;}]]></xml-property>
            <xml-property name="designerValues"><![CDATA[<?xml version="1.0" encoding="UTF-8"?>
<model:DesignValues xmlns:design="http://www.eclipse.org/datatools/connectivity/oda/design" xmlns:model="http://www.eclipse.org/birt/report/model/adapter/odaModel">
  <Version>2.0</Version>
  <design:ResultSets derivedMetaData="true">
    <design:resultSetDefinitions>
      <design:resultSetColumns>
        <design:resultColumnDefinitions>
          <design:attributes>
            <design:identifier>
              <design:name>text</design:name>
              <design:position>1</design:position>
            </design:identifier>
            <design:nativeDataTypeCode>12</design:nativeDataTypeCode>
            <design:precision>-1</design:precision>
            <design:scale>-1</design:scale>
            <design:nullability>Unknown</design:nullability>
          </design:attributes>
          <design:usageHints>
            <design:label>text</design:label>
            <design:formattingHints/>
          </design:usageHints>
        </design:resultColumnDefinitions>
      </design:resultSetColumns>
      <design:criteria/>
    </design:resultSetDefinitions>
  </design:ResultSets>
</model:DesignValues>]]></xml-property>
            <list-property name="privateDriverProperties">
                <ex-property>
                    <name>MAX_ROW</name>
                    <value>-1</value>
                </ex-property>
                <ex-property>
                    <name>XML_FILE</name>
                </ex-property>
            </list-property>
        </oda-data-set>
    </data-sets>
    <page-setup>
        <simple-master-page name="Simple MasterPage" id="2"/>
    </page-setup>
    <body>
        <text-data id="6">
            <property name="fontFamily">"Times New Roman"</property>
            <property name="fontSize">14pt</property>
            <property name="textAlign">justify</property>
            <property name="dataSet">testDataSet</property>
            <list-property name="boundDataColumns">
                <structure>
                    <property name="name">text</property>
                    <text-property name="displayName">text</text-property>
                    <expression name="expression" type="javascript">dataSetRow["text"]</expression>
                    <property name="dataType">string</property>
                </structure>
            </list-property>
            <expression name="valueExpr">row['text']</expression>
            <property name="contentType">html</property>
        </text-data>
    </body>
</report>

Word中的结果:

  

是一个文字。 T 他的是另一个文字。

如何使额外空间不出现?

我的测试项目可以下载here

1 个答案:

答案 0 :(得分:1)

我用eclipse-reporting-neon-R-win32-x86_64.zip尝试了你的文件,它运行正常。尝试升级您的编辑器或查看器。

这是一个文字。这是另一个文字。 &lt;&lt; - 格式化已删除,但在使用最新查看器运行时没有空格。

如果您只需要在Word中使用此功能,请尝试导出为DOC而不是DOCX。