Super-scarlett

vue---canvas实现二维码和图片合成的海报

应项目需求,要一张宣传页面上加一个太阳码合成一张宣传海报,用户用微信可以识别进入微信小程序。

 

1. npm安装

npm install html2canvas --save   //html转canvas

2.页面引入

import html2canvas from \'html2canvas\';

3.html:

两张图片的具体定位,可通过css控制,这边代码忽略。

qrcode.png为太阳码图片,是后端直接base64返回给前端,前端直接展示(src = \'data:image/png;base64,\'+ res.data),此代码忽略

 

<template>
        <div>
            <div ref="box">
	        <img :src=\'require("./images/bg.png")\' alt="">
	         <img :src=\'require("./images/qrcode.png")\' alt="">
            </div>

        <!--生成的合成图片-->

            <img :src="imgUrl" alt="">
       </div>
</template>

 4.js

<script>
import html2canvas from \'html2canvas\';
export default {
        data() {
            return{
                    imgUrl:\'\'
            }
        },
        methods:{
                draw(){
                    var that = this;
                    html2canvas(that.$refs.box).then(function(canvas) {
                      that.imgUrl = canvas.toDataURL()//将canvas转为base64图片(eg. data:image/png;base64,ijskjlkj)
                  });
                }  
        },
        mounted(){
            this.draw()
        }
    };
</script>

 

发表于 2019-04-25 18:17  Super_Mi  阅读(5540)  评论(0编辑  收藏  举报
 

分类:

技术点:

相关文章:

  • 2022-02-09
  • 2022-12-23
  • 2021-12-02
  • 2022-12-23
  • 2021-11-18
  • 2022-12-23
  • 2021-04-06
  • 2022-12-23
猜你喜欢
  • 2022-02-09
  • 2021-11-17
  • 2022-01-27
  • 2022-12-23
  • 2021-12-22
  • 2021-12-03
  • 2021-08-02
相关资源
相似解决方案