请教一个问题 ,有没有知道h5页面我点击按钮后生成在弹层上的海报,(二维码和一张图片拼接生成一张不重叠在一起的海报 )
有红包报答
可以用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();
然后就下载完成了
什么意思?请把问题描述一下,最好举例说明。
把生成的二维码和图片上下两行放到页面上就好了。
|
1.前端执行,用canvas生成
2.后台生成