java web 几种WEB报表的打印方式

 我来答
秀乞群群
推荐于2017-12-16 · TA获得超过19万个赞
知道顶级答主
回答量:6.7万
采纳率:91%
帮助的人:2.5亿
展开全部

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

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

eg:

div布局
 
<div id="printdiv" style="display:none;">
<table id="tableid" class="main" cellspacing="0" cellpadding="0" border="1"
    bordercolor="#000000" width="800px;">
       /******    your     code      ******/
   </table>
</div>
 
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();
}
百度网友e52581373
2019-08-29
知道答主
回答量:2
采纳率:0%
帮助的人:1385
展开全部
可以试试XMReport,做打印模板比较方便,输出PDF,现在浏览器都能直接预览PDF啦,实在不行可以用PDF.JS来预览也可以的。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
咿呀咿呀吼227
2015-01-07 · 超过28用户采纳过TA的回答
知道答主
回答量:58
采纳率:0%
帮助的人:79.5万
展开全部
除了用浏览器自带的打印功能打印,现在一些web报表(主要是以Finereport为代表的这类商业报表)还有flash打印的功能,不过这两个也很难说哪一个更好,就看你自己的需求了,我比较倾向于flash打印,它可以很好地解决打印时候的排版和分页问题,不用再为排版而发愁了!
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式