调用uni.canvasGetImageData

- 发布:2022-01-11 14:04
- 更新:2022-01-11 18:59
- 阅读:601
产品分类: uniapp/App
PC开发环境操作系统: Windows
PC开发环境操作系统版本号: win10
HBuilderX类型: 正式
HBuilderX版本号: 3.3.3
手机系统: Android
手机系统版本号: Android 11
手机厂商: 小米
手机机型: 红米K40
页面类型: vue
vue版本: vue2
打包方式: 云端
项目创建方式: HBuilderX
操作步骤:
预期结果:
调用uni.canvasGetImageData时,能够正常返回数据
调用uni.canvasGetImageData时,能够正常返回数据
实际结果:
调用uni.canvasGetImageData时,图片宽高为3024 * 4032,APP直接崩溃了
调用uni.canvasGetImageData时,图片宽高为3024 * 4032,APP直接崩溃了
bug描述:
that.ctx.draw(false, () => {
console.log('beforeGetImageData')
// 获取 canvas 的像素数组
uni.canvasGetImageData({
canvasId: 'myCanvas',
x: 0,
y: 0,
width: that.canvasStyle.width,
height: that.canvasStyle.height,
success: imageData => {
console.log(imageData, 'imageData')
},
fail: err => {
console.log(err, 'getImageDataErr')
},
complete: message => {
console.log(message 'getImageMessage')
}
})
})

FullStack - 【插件开发】【专治疑难杂症】【ios上架、马甲包、白包、过审、已成功上架过几百个】【多款插件已上架:https://ext.dcloud.net.cn/publisher?id=22130】【非诚勿扰】QQ:543610866
那张图片发下

内存溢出了吧,图片先压缩一下吧
-
1***@qq.com (作者)
因为我是做图像校正的功能,要对图片数据进行修改处理,目前做法是通过一个canvas找到要截取的内容后,然后新建一个canvas来存储需要截取的内容ImageData,然后再putImageData,压缩之后,canvas转成图片不会模糊吗?
2022-01-12 08:55
1***@qq.com (作者)
你好,图片已经发到问题上了,我试过10801080是ok的 然后这张3024 4032直接炸了...
2022-01-12 08:57