weImageFilters
weImageFilters copied to clipboard
选择图片后,canvas里的图片是变形的
选择图片后,如果图片长宽比例不是1:1的话,canvas里的图片就会是变形的,导致滤镜处理后的图片也是变形的,影响使用。
的确没有做过适配,之后看看
的确没有做过适配,之后看看
包括canvas的大小,可能做成不同机型的不同宽度分辨率自适应会更好些。
的确没有做过适配,之后看看
包括canvas的大小,可能做成不同机型的不同宽度分辨率自适应会更好些。
你可以在上传图片的时候去查看图片的信息,然后把宽高赋值给你的canvas即可。还要给helper对象也重新赋予宽高。 下面是index.js修改后的代码,你可以参考下,不过这个代码的原作者在11年就没更新过代码了- -建议慎用
wx.chooseImage({
count: 1,
success: function (res) {
if (res.tempFilePaths.length) {
let path = res.tempFilePaths[0]
wx.getImageInfo({
src: path,
success: function(res) {
let w = 'canvasObj.cWidth';
let h = 'canvasObj.cHeight';
z.setData({
[w]: res.width / 5,
[h]: res.height / 5
})
console.log(helper);
helper.canvasInfo.height = res.height / 5;
helper.canvasInfo.width = res.width / 5;
helper.initCanvas(path, () => {
z.setData({
selected: 1
})
})
}
})
}
},
})
的确没有做过适配,之后看看
包括canvas的大小,可能做成不同机型的不同宽度分辨率自适应会更好些。
你可以在上传图片的时候去查看图片的信息,然后把宽高赋值给你的canvas即可。还要给helper对象也重新赋予宽高。 下面是index.js修改后的代码,你可以参考下,不过这个代码的原作者在11年就没更新过代码了- -建议慎用
wx.chooseImage({ count: 1, success: function (res) { if (res.tempFilePaths.length) { let path = res.tempFilePaths[0] wx.getImageInfo({ src: path, success: function(res) { let w = 'canvasObj.cWidth'; let h = 'canvasObj.cHeight'; z.setData({ [w]: res.width / 5, [h]: res.height / 5 }) console.log(helper); helper.canvasInfo.height = res.height / 5; helper.canvasInfo.width = res.width / 5; helper.initCanvas(path, () => { z.setData({ selected: 1 }) }) } }) } }, })
好的,感谢!