canvans——合并图片

前两天有这么个需求,宣传海报图,需要把海报背景图和推广人的二维码合并成一张图,之前一直是后端合成的,但是听说前端canvans也能完成,自己尝试写了下js合并,发现还是前端合成比较简单:

var resultImg=new Image();
resultImg.id="resultImg";
resultImg.width=147;
resultImg.height=246;
resultImg.crossOrigin = "Anonymous";

let bgImg=new Image();
bgImg.id="bgImg";
bgImg.src="https://ss0.bdstatic.com/70cFuHSh_Q1YnxGkpoWK1HF6hhy/it/u=1338529944,1756098076&fm=27&gp=0.jpg";
bgImg.width=147;
bgImg.height=246;
bgImg.crossOrigin = "Anonymous";
//document.body.appendChild(bgImg);
let qrImg=new Image();
qrImg.id="qrImg";
qrImg.src="https://ss1.bdstatic.com/70cFvXSh_Q1YnxGkpoWK1HF6hhy/it/u=3316827274,529484043&fm=27&gp=0.jpg";
qrImg.width=40;
qrImg.height=40;
qrImg.crossOrigin = "Anonymous";

var drawing = document.createElement('canvas');
drawing.id="drawing";
drawing.width=147;
drawing.height=246;
drawing.style.position = "absolute";

if (drawing.getContext){
  let context = drawing.getContext('2d');
  context.drawImage(bgImg,0,0,147,246);
  context.drawImage(qrImg,0,0,40,40);
}
//let resultUrl=drawing.toDataURL("image/png").replace("image/png", "image/octet-stream");
let resultUrl=drawing.toDataURL("image/png");
//window.location.href=resultUrl;
resultImg.src=resultUrl;
document.body.appendChild(resultImg);
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

水田如雅

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值