如果单词的一部分使用 HTML 标记突出显示,Birt 会插入一个额外的 space
Birt inserts an extra space if part of the word is highlighted using an HTML tag
我在 Birt 的报告中遇到以下问题。我希望能够使用 HTML 标签 <b>
、<i>
、<u>
等突出显示报告中的文本。
如果我突出显示整个单词,那么一切正常。但是如果我只突出显示单词的一部分,那么 Birt 会用额外的 space:
拆分这样的单词
数据源:
<data>
<text><b>This</b> is a text. T<b>his</b> 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结果:
This is a text. T his is another text.
如何让多余的space不出现?
我的测试工程可以下载here。
我用 eclipse-reporting-neon-R-win32-x86_64.zip 试过你的文件,效果很好。尝试升级您的编辑器或查看器。
这是一篇文字。这是另一个文本。 <<- 使用最新查看器 运行 时删除了格式,但没有空格。
如果您只是在 Word 中需要这个,请尝试导出为 DOC 而不是 DOCX。
有点晚了,但我在我的 BIRT 分支中修复了这个错误,
见 https://github.com/hvbtup/birt/commit/fee8b76a1c2b3f2df097d9f23214d0ebc1770f61
您可以分叉官方 BIRT 存储库 (https://github.com/eclipse/birt) 并将此修复应用于代码。
我在 Birt 的报告中遇到以下问题。我希望能够使用 HTML 标签 <b>
、<i>
、<u>
等突出显示报告中的文本。
如果我突出显示整个单词,那么一切正常。但是如果我只突出显示单词的一部分,那么 Birt 会用额外的 space:
数据源:
<data>
<text><b>This</b> is a text. T<b>his</b> 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结果:
This is a text. T his is another text.
如何让多余的space不出现?
我的测试工程可以下载here。
我用 eclipse-reporting-neon-R-win32-x86_64.zip 试过你的文件,效果很好。尝试升级您的编辑器或查看器。
这是一篇文字。这是另一个文本。 <<- 使用最新查看器 运行 时删除了格式,但没有空格。
如果您只是在 Word 中需要这个,请尝试导出为 DOC 而不是 DOCX。
有点晚了,但我在我的 BIRT 分支中修复了这个错误, 见 https://github.com/hvbtup/birt/commit/fee8b76a1c2b3f2df097d9f23214d0ebc1770f61 您可以分叉官方 BIRT 存储库 (https://github.com/eclipse/birt) 并将此修复应用于代码。