Echarts图表打印

 

Echarts图表打印

Echarts用作统计十分好用,还能够转为图片,进而保存、打印。

转图片的方式也不麻烦,步骤如下:

1、首先在Echarts图标上方定义一个img

1 <!--startprint-->
2 <img src="" id="printImg" style="height: 50%;width:90%;display: none;" />
3 <!--endprint-->

2、创建一个按钮用于调用打印

1 <button id="print" text="打印图表" img="WEB-CORE/images/gif/Export.gif" action="PrintImage()" />

3、定义打印函数

 1 function PrintImage() {
 2 // 把echarts图片转成64编码的图片
 3 var img = new Image();
 4 var imgSrc = myChart.getDataURL();
 5 // 渲染到图表上面展示
 6 $("#printImg").attr("src", imgSrc).show();
 7 //这里要使用延时加载,才不会在图片还没渲染出来的时候就调用打印的方法
 8 setTimeout(function() {
 9 //直接调用浏览器打印功能
10 bdhtml = window.document.body.innerHTML;
11 //定义打印区域起始字符,根据这个截取网页局部内容
12 sprnstr = "<!--startprint-->"; //打印区域开始的标记
13 eprnstr = "<!--endprint-->"; //打印区域结束的标记
14 prnhtml = bdhtml.substr(bdhtml.indexOf(sprnstr) + 17);
15 prnhtml = prnhtml.substring(0, prnhtml.indexOf(eprnstr));
16 //还原网页内容
17 window.document.body.innerHTML = prnhtml;
18 //开始打印
19 window.print();
20 }, 1000);
21 
22 }

take it !!!

 

posted @ 2021-11-24 15:18  帅痞  阅读(1296)  评论(0)    收藏  举报