ireport+jasperreport 直接输出到打印机 普通报表 交叉报表

本文介绍了如何利用iReport设计针式打印机票据,包括普通报表和交叉报表,以及如何将报表直接输出到打印机。通过javabean数据源获取数据,设置报表属性适应不同客户需求,利用JasperReport API实现打印。同时,文章讲解了报表的各个部分(Title、Page Header等)以及如何添加合计、设置边框、使用表达式和自适应高度。最后,演示了如何将报表传入JRPrintServiceExporter进行打印,并处理自定义纸张问题。
摘要由CSDN通过智能技术生成

       项目中要用到针式打印机票据打印,本来是使用java printable 通过 Graphic2D输出到图形化方式打印的,运行了一段时间客户对版面个性需要比较多,用输出图形的方式调整太麻烦,而且Graphic2D画表格真的很麻烦,所以后来选择用ireport来定制版面,通过jasperreport api直接输送到打印机上。

       目前针式打印几比较通用的纸张是9.5*5.5英寸的,根据不同客户的需求,我们定制了2种版面,因为我们是做服装行业的,一类客户是不管理尺码的,列数比较少纵向打印比较省纸张,另一种是管颜色尺码,以动态尺码为表头,需要用到交叉报表。

      数据是从客户端通过socket发送到我的程序上的,所以需要用到javabean数据源。

      首先第一步创建测试数据源,创建一个javabean类用于承载数据,创建一个工厂类用于提供数据。

public class JasperDatasourceFactory {

    public static Collection createBeanCollection1() throws Exception{
          List list_1=new ArrayList();

          //填充list_1

          return list_1;

    }

}


在ireport添加项目的classpath,工具-选项-classpath,添加完之后需要重启ireport,不然找不到。


创建一个ireport空模板,设置报表属性width=369 height=684   及上面提及纸张的纵向模式

创建javabean数据源,并将数据源设为默认数据源:


3.导入数据源字段:

右键导航栏里的根节点,点击edit query,进入后切换到javabean datasource,填写javabean类路径,点击read attributes,把要统计的自动天下到下方的列表中

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值