gpt4 book ai didi

html - 为什么 html 标签 (s, strong) 在 jasper 报告中不起作用?

转载 作者:行者123 更新时间:2023-11-27 22:58:10 25 4
gpt4 key购买 nike

我添加了静态文本 html 标签,但在单击预览后粗体和删除线无法正确显示。

此外,当从数据库加载数据时,它无法正确显示。

Example

有什么解决办法吗?

最佳答案

Jasper Report不支持所有的html标签,支持的标签定义在Styled Text Sample

如您所见,<s><strong> 标签不受支持。

如果你喜欢使用 html,你的选择是将它们替换为 <font style="text-decoration: line-through"><b>

<style isStrikeThrough="true"><style isBold="true"> 然后使用带样式的文本而不是 html。

如果你有动态数据你可以用java来替换它

${myField}.replace("<s>","<font style=\"text-decoration: line-through\">").
replace("</s>","</font>").
replace("<strong>","<b>").replace("</strong>","</b>")

如果您需要替换多个标签,我建议在 java 中创建一个方法(静态)并调用此方法,而不是在报告中执行替换

例子

jrxml

<?xml version="1.0" encoding="UTF-8"?>
<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="html" pageWidth="595" pageHeight="842" whenNoDataType="AllSectionsNoDetail" columnWidth="555" leftMargin="20" rightMargin="20" topMargin="20" bottomMargin="20" uuid="fe5b2242-b491-46ba-8456-aa71ae5e2212">
<queryString>
<![CDATA[]]>
</queryString>
<title>
<band height="53" splitType="Stretch">
<textField>
<reportElement x="0" y="0" width="210" height="50" uuid="e462bb03-e884-4b5b-b41f-2867a4bd63b2"/>
<textElement markup="html"/>
<textFieldExpression><![CDATA["<s>&lt;s&gt;</s> and <strong>&lt;strong&gt;</strong> will not work but <font style=\"text-decoration: line-through\">&lt;font style=\"text-decoration: line-through\"&gt;</font> and <b>&lt;b&gt;</b> will"]]></textFieldExpression>
</textField>
<textField>
<reportElement x="220" y="0" width="220" height="50" uuid="744bb631-d03a-452e-ae5e-19e7ef5a378a"/>
<textElement markup="html"/>
<textFieldExpression><![CDATA["With java however you can replace'em and both <s>&lt;s&gt;</s> and <strong>&lt;strong&gt;</strong> will work".replace("<s>","<font style=\"text-decoration: line-through\">").replace("</s>","</font>").replace("<strong>","<b>").replace("</strong>","</b>")]]></textFieldExpression>
</textField>
</band>
</title>
</jasperReport>

结果

result

关于html - 为什么 html 标签 (s, strong) 在 jasper 报告中不起作用?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54310212/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com