Jasper报表中的动态图片大小 [英] Dynamic Image size in Jasper Report

查看:162
本文介绍了Jasper报表中的动态图片大小的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我正在尝试打印带有图像的Jasper报告.使用参数动态显示图像.图像打印良好.但是我也需要动态输出图像大小.如何传递图像尺寸(以英寸为单位)作为参数并获得预期的输出?

I am trying to print a Jasper Report with a image. Image is displayed dynamically using a parameter. Image is printing fine. But I need to output the image size dynamically too. How can I pass the the image size (in inch) as a parameter and get my expected output?

<image>
<reportElement uuid="a4ed8a3a-827e-494c-ba8d-7276007941c7" x="0" y="0" width="555" height="608"/>
<imageExpression><![CDATA[$P{IMAGE_LOCATION}]]></imageExpression>
</image>

推荐答案

public JasperDesign dynamicImage() throws JRException {

    JasperDesign jasperDesign = new JasperDesign();
    jasperDesign.setName("NoXmlDesignReport");
    jasperDesign.setPageWidth(595);
    jasperDesign.setPageHeight(842);
    jasperDesign.setColumnWidth(515);
    jasperDesign.setColumnSpacing(0);
    jasperDesign.setLeftMargin(40);
    jasperDesign.setRightMargin(40);
    jasperDesign.setTopMargin(20);
    jasperDesign.setBottomMargin(20);

    JRDesignExpression expression = new JRDesignExpression();

    //Summary

        band = new JRDesignBand();
        band.setHeight(125);
        JRDesignImage jrDesignImage = new JRDesignImage(jasperDesign);
        expression = new JRDesignExpression();
        expression.setText("\"" "/path/to/image\"");
        jrDesignImage.setExpression(expression);
        jrDesignImage.setHorizontalAlignment(HorizontalAlignEnum.LEFT);
        jrDesignImage.setX(400);
        jrDesignImage.setY(0);
        jrDesignImage.setWidth(93);
        jrDesignImage.setHeight(100);
        jrDesignImage.setScaleImage(ScaleImageEnum.RETAIN_SHAPE);
        band.addElement(jrDesignImage);
        jasperDesign.setSummary(band);

    return jasperDesign;
}

您可以动态设置宽度和高度.

You can set width and height dynamically.

这篇关于Jasper报表中的动态图片大小的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆