我有一个我在网络服务器上生成的报告。报告包含和图像,我作为参数传递,所有参数都可以在报告生成中正常工作。
但是我也想在Jaspersoft Studio的报表设计中使用这个图像,并想知道如何做到这一点。它可以作为defaultValueExpression
加载,例如下面的内容吗?
<parameter name="MyLogo" class="java.lang.Object">
<parameterDescription><![CDATA[]]></parameterDescription>
<defaultValueExpression>path/to/file here?</defaultValueExpression>
</parameter>
答案 0 :(得分:1)
要显示位置图片,您需要在imageExpression
出于这个原因,我经常使用2个参数,1表示基本路径(图像的位置),1表示要显示的图像(图像名称),您可以指示defaultValueExpression
以及是否需要更改它们通过参数映射传递您的值。当然,您只能使用一个包含图像完整绝对路径的参数。
示例强>
<?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="image" pageWidth="595" pageHeight="842" whenNoDataType="AllSectionsNoDetail" columnWidth="555" leftMargin="20" rightMargin="20" topMargin="20" bottomMargin="20" uuid="61ee899d-277b-4efa-9306-c325b54ac022">
<parameter name="IMAGE_PATH" class="java.lang.String" isForPrompting="false">
<defaultValueExpression><![CDATA["C:\\Users\\pette\\Desktop\\tmp\\"]]></defaultValueExpression>
</parameter>
<parameter name="THE_IMAGE" class="java.lang.String">
<defaultValueExpression><![CDATA["theboss.jpeg"]]></defaultValueExpression>
</parameter>
<title>
<band height="118" splitType="Stretch">
<image scaleImage="RealSize">
<reportElement x="0" y="0" width="139" height="95" uuid="f5f1c323-b120-48ed-98a5-478a5b907429"/>
<imageExpression><![CDATA[$P{IMAGE_PATH} + $P{THE_IMAGE}]]></imageExpression>
</image>
</band>
</title>
</jasperReport>
<强>输出强>