VUE项目实践——浏览器打印时canves打印预览空白问题

//浏览器打印
<div @click="doPrint()">打印</div>
<div id="report-body" >内容<div>

//打印
doPrint: function() {
	let newstr = document.getElementById('report-body').innerHTML;
	let oldstr = document.body.innerHTML;
	document.body.innerHTML = newstr;
	window.print();
	document.body.innerHTML = oldstr;
	window.location.reload() //解决打印取消  返回页面鼠标失效,不能继续打印
}


//canvas打印预览时空白:解决方案,把canvas转为图片
<!--扇形进度条 图片格式-->
<div id="canvas-Img"></div>
<!--扇形进度条 canvas格式-->
<canvas id = "canvasId"
	width = '320'
	height = '158'
	style = "width: 96%;display: none;" > < /canvas>

//canvas转Imgages解决打印 扇形进度条空白bug
generentCanvas: function(totalScoreLast, totalScore, canvasId) {
	response.GenerentCanvas(totalScoreLast, totalScore, canvasTotal); //扇形进度条
	let imgId = document.getElementById('canvas-Img');
	let canvas = document.getElementById('canvasId');
	let dataURL = canvas.toDataURL("image/png"); //转图片  隐藏canvas
	imgId.innerHTML = '<img style="width: 320px;height: 158px;" src="' + dataURL + '"/>';
},


 

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值