当前位置: 首页 > 知识库问答 >
问题:

.rtf文件数据不在Jasper报表中呈现

松嘉运
2023-03-14
cell 1  lots of text in cell two    cell 3
cell 1lots of text in cell twocell 3
    <?xml version="1.0" encoding="UTF-8"?>
<!-- Created with Jaspersoft Studio version 6.1.1.final using JasperReports Library version 6.1.1  -->
<!-- 2015-11-16T12:10:05 -->
<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="Test_RTF" pageWidth="595" pageHeight="842" columnWidth="555" leftMargin="20" rightMargin="20" topMargin="20" bottomMargin="20" uuid="e4e612e9-7787-4540-a6b9-b2d362a29f32">
    <property name="com.jaspersoft.studio.data.sql.tables" value=""/>
    <property name="com.jaspersoft.studio.data.defaultdataadapter" value="Sample DB"/>
    <queryString>
        <![CDATA[select '{\rtf1\ansi\deff0
\trowd
\clbrdrt\brdrs\clbrdrl\brdrs\clbrdrb\brdrs\clbrdrr\brdrs
\cellx1000
\clbrdrt\brdrs\clbrdrl\brdrs\clbrdrb\brdrs\clbrdrr\brdrs
\cellx2000
\clbrdrt\brdrs\clbrdrl\brdrs\clbrdrb\brdrs\clbrdrr\brdrs
\cellx3000
cell 1\intbl\cell
lots of text in cell two\intbl\cell
cell 3\intbl\cell
\row
}' rtf_simple from dual]]>
    </queryString>
    <field name="RTF_SIMPLE" class="java.lang.String"/>
    <background>
        <band splitType="Stretch"/>
    </background>
    <detail>
        <band height="125" splitType="Stretch">
            <textField isStretchWithOverflow="true" isBlankWhenNull="true">
                <reportElement x="110" y="30" width="410" height="30" uuid="43e8a2fb-5db5-4290-8db7-51c93c330f22"/>
                <textElement markup="rtf"/>
                <textFieldExpression><![CDATA[$F{RTF_SIMPLE}]]></textFieldExpression>
            </textField>
        </band>
    </detail>
</jasperReport>

[更新]

这是一个简化的用例。我们的实际需求是,我们有。RTF文档作为BLOB存储在DB中。我们希望在我们的大报告之间插入这些文档的内容。这些rtf文件包含文本、表格和图像。当我试图读取这个rtf文件时,只有文本出现。有人能提出任何其他的替代方案来实现这一点吗?

共有1个答案

巫马望
2023-03-14

我有一种感觉,它类似于markup=“html”您不应该期望jasper报表能够格式化表、图像

test

使用markup=“html”将只显示红色文本“test”,因此没有红色边框

<box topPadding="0" leftPadding="0" bottomPadding="0" rightPadding="0">
  <topPen lineWidth="0.25"/>
  <leftPen lineWidth="0.25"/>
  <bottomPen lineWidth="0.25"/>
  <rightPen lineWidth="0.25"/>
</box>
 类似资料:
  • 我有一个要求,我必须阅读CSV文件并在Jasper中准备一份报告。我能够在常规文本字段中使用CSV数据源。但是当我在详细信息或摘要部分添加一个表时,它需要创建一个新的数据集。我成功地创建了它,但是当报告运行时,它无法从CSV数据源获取数据,我得到了一个空白的报告。如果我使用数据库而不是CSV,同样的事情也会发生。Jasper中有bug吗?

  • 为了在JavaFX11中创建Jasper报表,我使用了动态报表。我正在Swing节点中加载报表,但Jasper报表只有在我单击stack窗格区域时才会出现,而所有其他组件只有在我悬停在所有这些组件上时才可见。组件和报表内容不是立即加载的,而不是在鼠标悬停时显示的,而报表是在滚动到堆栈窗格上时显示的。 因为这是Java8中的bug,并且似乎已经解决了,但是在Java11中,我也遇到了同样的问题。 更

  • 使用的开发IDE:Jaspersoft Studio 我试图使用下面的表达式将主报表数据源用于表数据集,但没有得到任何数据。 请说明如何将数据源从报表传递到表。我对jasper报告很陌生。样品会很有用。 JRXML: Json数据: 我已经添加了我试图加载的JRXML和Json。当我在数据集中传递dataSourceExpression时,我只得到2行,但在源数据中有3行。请帮我解决这个问题

  • 你好,在我解释我的问题之前,我会告诉你我想回答什么。 我正在尝试创建一个子报告,显示用户的不同收入。一个用户可以收到多次捐赠,出售了多栋房子/房产,赢得了比赛等。所有这些操作都有更多关于他们收到多少钱、缴纳的税款的详细信息,… 现在,我正在尝试在一个细节中显示用户的详细信息(姓名,姓氏,..;)。这行得通。下一个细节带将用于捐赠。我创建了一个子报表,在其中指定了此部分的布局。但是,此子报表所需的数

  • 我正在Jasper报表中制作一个简单的报表,数据源java bean。我在做一个表格的报告。在jaspersoft studio中,表是可见的,但当我生成报告时,表是不可见的,其余的条目是很好的和可见的。我已添加“详细信息表”部分。 xml代码: 添加值的Java代码