WebCodeLad 2021-09-18 00:39 采纳率: 58.3%
浏览 87
已结题

H5页面生成二维码 和一张图片拼接生成一张不重叠在一起的海报

请教一个问题 ,有没有知道h5页面我点击按钮后生成在弹层上的海报,(二维码和一张图片拼接生成一张不重叠在一起的海报 )
有红包报答

  • 写回答

4条回答 默认 最新

  • 二哈冬 2021-09-18 10:40
    关注

    可以用canvas绘制成图片后保存,下边是代码,请根据平台进行修改,微信小程序可能需要下载图片,因为你是两张图所以我就不写绘制文字的代码了
    画布(canvas)对象有一个非常有用的方法:toDataURL()。这个方法能把画布里的图案转变成base64编码格式

    //获取canvas元素
    var c=document.getElementById("canvas");
    //创建canvas对象
     var ctx=c.getContext("2d");
    //我的图片是直接在html通过img引入这 这两行代码是保证图片加载完成,你可以直接使用下载文件的方法进行下载
     var img=document.getElementById("tulip");
     img.onload = ()=>{
          //图片加载完成进行绘制,注意必须确保图片加载完成,位置可以根据自己的需求更改,如果有设备兼容问题的话,建议动态
    //算  根据canvas的进行动态绘制也可以
         ctx.drawImage(img,20,20);
    }
    // 这是图片base64码,toDataURL()不传参数生成png图片
     let base64 =  c.toDataURL("image/jpeg")
         var a = document.createElement("a");
        a.href = base64 ;
    //下載名称
        a.download = 123123;
        a.click();
    

    然后就下载完成了

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(3条)

报告相同问题?

问题事件

  • 系统已结题 3月31日
  • 已采纳回答 3月23日
  • 创建了问题 9月18日

悬赏问题

  • ¥15 echarts动画效果失效的问题。官网下载的例子。
  • ¥60 许可证msc licensing软件报错显示已有相同版本软件,但是下一步显示无法读取日志目录。
  • ¥15 Attention is all you need 的代码运行
  • ¥15 一个服务器已经有一个系统了如果用usb再装一个系统,原来的系统会被覆盖掉吗
  • ¥15 使用esm_msa1_t12_100M_UR50S蛋白质语言模型进行零样本预测时,终端显示出了sequence handled的进度条,但是并不出结果就自动终止回到命令提示行了是怎么回事:
  • ¥15 前置放大电路与功率放大电路相连放大倍数出现问题
  • ¥30 关于<main>标签页面跳转的问题
  • ¥80 部署运行web自动化项目
  • ¥15 腾讯云如何建立同一个项目中物模型之间的联系
  • ¥30 VMware 云桌面水印如何添加