晒网
晒网
  • 发布:2024-09-29 12:07
  • 更新:2024-09-29 12:07
  • 阅读:32

【报Bug】content.drawimage后 getimagedata为空数据

分类:uni-app x

产品分类: uni-app x/App

PC开发环境操作系统: Windows

PC开发环境操作系统版本号: win10 专业版

HBuilderX类型: 正式

HBuilderX版本号: 4.28

手机系统: Android

手机系统版本号: Android 13

手机厂商: 华为

手机机型: mate60

页面类型: vue

vue版本: vue3

打包方式: 云端

项目创建方式: HBuilderX

示例代码:

uni.getImageInfo({
src: this.authorbackpic,
success: res => {
// 异步调用方式, 跨平台写法
uni.createCanvasContextAsync({
id: 'bgcolor',
component: this,
success: (context : CanvasContext) => {
this.renderingContext = context.getContext('2d')!
}
})

                        const context = this.renderingContext!  
                        console.log('context',context)  
                        const image = new Image(100, 100);  
                                image.src = 'https://web-ext-storage.dcloud.net.cn/uni-app-x/hello-uniappx-qrcode.png'  
                                image.onload = () => {  
                                context.drawImage(image, 0, 0, 100, 100)  
                                context.save()  
                                let datadots = context.getImageData(0,0,100,100)  
                                console.log('datadots',datadots)  
                            }  
                        console.log('-------context',context)                             
                        console.log('---',res)  
                    }  
                })  

返回数据如下

//‍[⁠io.dcloud.canvas.ImageDataImpl⁠]‍
{
"data":
//‍[⁠io.dcloud.uts.Uint8ClampedArray⁠]‍
{},
"height":
//‍[Int]‍
100,
"width":
//‍[Int]‍
100
}

为啥data是空对象呢

操作步骤:

放一个canvas控件
<canvas ref="refbgcolor" id="bgcolor"></canvas>
复制上面的代码放到一方法里面 点击调用就行

预期结果:

data为数组集合

实际结果:

返回空对象

bug描述:

先drawimage 然后再getimage的得到的data数据为空

2024-09-29 12:07 负责人:无 分享
已邀请:

要回复问题请先登录注册