HarmonyOS开发中 pixelmap深拷贝问题?

HarmonyOS开发中 pixelmap深拷贝问题?以下方式拷贝pixelmap得到的图片颜色有偏差,同样位置的像素,如果原图是红色,拷贝图片显示蓝色,反之亦然。

static async copyPixelMap(pm: PixelMap): Promise<PixelMap | null> { 
  const imageInfo: image.ImageInfo = await pm.getImageInfo(); 
  const buffer: ArrayBuffer = new ArrayBuffer(pm.getPixelBytesNumber()); 
  await pm.readPixelsToBuffer(buffer); 
  const opts: image.InitializationOptions = { 
    editable: true, 
    pixelFormat: image.PixelMapFormat.RGBA_8888,//这里用RGBA_8888效果一样 
    size: { height: imageInfo.size.height, width: imageInfo.size.width } 
  }; 
  return await image.createPixelMap(buffer, opts); 
}
阅读 748
1 个回答
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进