2016-04-22 235 views
1

我有一個報告,我在我的網絡服務器上生成。報告包含和我通過的圖像作爲一個參數,它在報告生成中都可以正常工作。如何使用參數顯示默認圖像?

但我希望能夠在Jaspersoft Studio的報告設計中使用此圖像,並想知道如何才能做到這一點。它可以加載爲defaultValueExpression例如下面的東西?

<parameter name="MyLogo" class="java.lang.Object"> 
    <parameterDescription><![CDATA[]]></parameterDescription> 
    <defaultValueExpression>path/to/file here?</defaultValueExpression> 
</parameter> 

回答

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> 

輸出

Result