VUE生成海报(HTML转图片)

效果图如下所示

在这里插入图片描述

引用插件,使用插件


//引用插件
npm install qrcodejs2 --save
npm install html2canvas --save

//在需要生成海报的页面使用
import html2canvas from 'html2canvas';
import QRcode from 'qrcodejs2';

生成海报代码


//template
<div class="burr_f-haibao" id="posterHtml" v-if="posterImg == ''">
	<div>测试海报</div>
</div>	
<div class="burr_f-haibao" v-if="posterImg != ''">
	<img style="z-index: 100;" :src="posterImg" />
</div>

//script
data() {
    return {
	  posterImg:'',
    }
 },
 mounted(){
	let that = this
	let domObj = document.getElementById('posterHtml')
	html2canvas(domObj, {
	  useCORS: true,
	  allowTaint: false,
	  logging: false,
	  letterRendering: true,
	  onclone (doc) {
	    let e = doc.querySelector('#posterHtml')
	    e.style.display = 'block'
	  }
	}).then(canvas => {
		that.posterImg = canvas.toDataURL('image/png')
	})
 },

//CSS
.burr_f-haibao{width: 80%;height: 80vh;margin: 3vh 10% 0;float: left;background-color: #000;position: relative;}
.burr_f-haibao>img{width:100%;height:100%;}
.burr_f-haibao>div{font-size: 14px;color: #fff;text-align:center;line-height: 80vh;}

有个注意事项一定要先生成html部分在去转成图片,有必要可以使用setTimeout(function (){},1000)


遇到问题可以看我主页加我Q,很少看博客,对你有帮助别忘记点赞收藏。

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值