java 打印 控件_JAVA的Web打印方式(PageOffice、POI、jacob,html打印等)

之前因为需要,去学习了几种WEB报表的打印方式,发现用Java直接去操作Word、Excel还是不那么方便,下面就简单介绍几种;

1、用浏览器自带的打印功能直接打印;

这种方式是最直接的,方便的,不需要加什么插件jar包,只要前台在一个 div 中模仿着报表的格式去设置界面布局,然后把数据动态的填充进去,再调用JavaScript打印函数,就可以实现界面的局部打印功能。(如果不想让报表div在界面中显示出来可以隐藏之)PS:不过直接在前台界面打印还是会遇到意想不到的情况,不同浏览器的问题,反正我就遇到不同浏览器打印出来的报表排版不一的情况,用的 时候需要注意。

eg:

div布局

/******your code ******/

JavaScript部分:(自己根据需要选择触发响应的JS函数)

function windowprint() {var f= document.getElementById("printdiv");

f.style.display= "";window.print(); f.style.display = "none";

}

function myPrint(obj){

var newWindow=window.open("打印窗口","_blank");

var docStr=obj.innerHTML;

newWindow.document.write(docStr);

newWindow.document.close();

newWindow.print();

newWindow.close();

}

2、使用第三方插件完成报表打印编辑(这里介绍PageOffice 和 Jacob)

先说PageOffice,这是国产货,其强大之处在于其对Word的处理和它的在线编辑能力,最大的不足就是要收费(不过也不知道怎么收,下载的包里有自带的试用码,也不管先用着玩玩)

准备:去官网下载java版本的包(http://www.zhuozhengsoft.com/download.html),解压后需要把PageOffice.cab和pageoffice.jar两个包放到WEB-INF/lib中去还要在你的web.xml中加入以下部分:

poserver

com.zhuozhengsoft.pageoffice.poserver.Server

poserver

/poserver.do

poserver

/pageoffice.cab

poserver

/popdf.cab

poserver

/sealsetup.exe

adminseal

com.zhuozhengsoft.pageoffice.poserver.AdminSeal

adminseal

/adminseal.do

adminseal

/loginseal.do

adminseal

/sealimage.do

mht

message/rfc822

adminseal-password

123456

然后就可以直接用了

eg:直接贴一个Struts2下使用的Demo好了

import

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值