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);
}
HarmonyOS
赞
收藏 0
回答 1
待解决
相关问题
HarmonyOS 浅拷贝深拷贝
14浏览 • 1回复 待解决
#鸿蒙通关秘籍#如何实现PixelMap对象的深拷贝?
130浏览 • 1回复 待解决
#鸿蒙通关秘籍#如何使用PixelMap深拷贝实现图片裁剪?
178浏览 • 1回复 待解决
#鸿蒙通关秘籍# 如何使用PixelMap进行图片的深拷贝操作并保持性能优化?
126浏览 • 1回复 待解决
ArkWeb组件是否支持深拷贝
587浏览 • 1回复 待解决
HarmonyOS 如何对数组进行深拷贝?
288浏览 • 1回复 待解决
HarmonyOS ArkWeb组件是否支持深拷贝?
504浏览 • 2回复 待解决
#鸿蒙通关秘籍# 在HarmonyOS中如何通过PixelMap实现图片深拷贝后的裁剪和保存功能?
77浏览 • 0回复 待解决
ArkTS中如何实现对象的深拷贝?
487浏览 • 1回复 待解决
HarmonyOS 深拷贝关于list类型如何处理?
158浏览 • 1回复 待解决
HarmonyOS 如何深拷贝一个对象,比如Object.assign({}, jrParam)
66浏览 • 1回复 待解决
HarmonyOS 使用@pro做UI的刷新的时候,如果同步的数据对象特别大,深拷贝会不会存在性能问题?
309浏览 • 1回复 待解决
HarmonyOS PixelMap位图处理问题
5浏览 • 1回复 待解决
#鸿蒙通关秘籍# 如何在鸿蒙开发中通过使用@ObjectLink避免不必要的深拷贝,提高状态管理效率?
88浏览 • 0回复 待解决
HarmonyOS fileIo.copyFileSync拷贝文件到中文目录,拷贝不了
60浏览 • 1回复 待解决
HarmonyOS 文件拷贝示例
8浏览 • 1回复 待解决
HarmonyOS 相册文件拷贝
24浏览 • 1回复 待解决
HarmonyOS关于沙箱视频拷贝到用户相册的问题
710浏览 • 1回复 待解决
HarmonyOS使用ArrayBuffer 构造PixelMap 数据报错问题
681浏览 • 1回复 待解决
HarmonyOS OH_AudioCaptureInfo结构缺少了位深的参数,音频采样位深是多少呢
20浏览 • 1回复 待解决
HarmonyOS 沙箱文件拷贝
53浏览 • 1回复 待解决
HarmonyOS选取并拷贝文件失败
435浏览 • 1回复 待解决
HarmonyOS 关于image.PixelMap跨页面流转的问题
17浏览 • 1回复 待解决
HarmonyOS Pixelmap相关反馈
43浏览 • 1回复 待解决
copy前先确认下源pixelmap的格式:https://developer.huawei.com/consumer/cn/doc/harmonyos-references-V5/js-apis-image-V5#ZH-CN_TOPIC_0000001884758670__getimageinfosync12 方法1:https://developer.huawei.com/consumer/cn/doc/harmonyos-references-V5/js-apis-image-V5#ZH-CN_TOPIC_0000001884758670__initializationoptions8 方法2:readpixelmaptobuffer拿到的BGRA_8888,抽个方法把[[b,g,r,a]…] 转换成[[r,g,b,a]…]。