1.安装print.js插件:npm install print-js --save;
2.引入插件:import * as printJS from 'print-js';
3.定义按钮:
<button nz-button nzType="primary" (click)="printButton()" style="margin-left: 10px;">打印</button>
4.按钮的触发事件:
// 打印按钮
public printButton() {
$('#printImg').show();
printJS({
printable: 'printImg',
type: 'html',
// style: style,// 亦可使用引入的外部css;
// scanStyles: false
$('#printImg').hide();
5.图片元素:
<img src="" id="printImg" style="height: 50%;width:90%;display: none;" />
6.图表相关代码:
const chartEventsTotal = ech.init(<HTMLDivElement>(document.getElementById(id)), 'macarons');
chartEventsTotal.on('finished', function () {
var img = chartEventsTotal.getDataURL();
var printImgId = document.getElementById('printImg')
printImgId.setAttribute('src', img);
7.原理:
将echarts的图表转换成图片赋予我们一开始定义的img元素中,然后直接利用插件就可以打印。
1.如何在打印的时候加上精美的echarts图表呢?
解决办法是:先把echarts图转成图片,再打印,就不会出现图表内容不好看的问题了呢
注意:结构一定要改成图片,因为要显示的是图片呢
2,比如这样一段结构
<img src="" alt="" :id="main"
style="width: 800px; height: 266px"/>
3.比如这样一个图表内容,它是折线图
drawChart() {
// 基于准备好的dom,初始化echarts实例
地球人都知道,报表工具一般都有导出和打印的功能,不仅可以将图形在页面上显示,还可以导出到 WORD、PDF 等文件中提高逼格,或者直接打印出来以供参考。So,每个 baby 都希望被集...
Echarts十分好用,还能够保存为图片,进而打印,麻烦的是甲方爸爸想要在界面上直接打印图表,这可麻烦死了,今下午查遍了度娘,最终找到了解决方法。
首先在Echarts图标上方定义一个img
<!--startprint-->
<img src="" id="printImg" style="height: 50%;width:90%;display: none;" />...
为方便用户能够更好的在报表中使用 Echarts 图形,润乾报表 5 提供了对 Echarts 图形的导出与打印。但导出与打印依赖于 slimerjs 和 firefox,因此使用导出与打印前需要先按照如下步骤将环境先部署好,具体操作如下:
第一步:获取并安装 slimerjs
步骤1:获取slimerjs安装包
用户可以通过两个途径获取安装包:
(1) 报表自带安装包【安装根目录】\r...