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 image的pixelmap如何进行深拷贝
30浏览 • 1回复 待解决
HarmonyOS 浅拷贝深拷贝
255浏览 • 1回复 待解决
#鸿蒙通关秘籍#如何实现PixelMap对象的深拷贝?
211浏览 • 1回复 待解决
#鸿蒙通关秘籍#如何使用PixelMap深拷贝实现图片裁剪?
247浏览 • 1回复 待解决
HarmonyOS 对象实现深拷贝
235浏览 • 1回复 待解决
ArkWeb组件是否支持深拷贝
808浏览 • 1回复 待解决
HarmonyOS ArkWeb组件是否支持深拷贝?
730浏览 • 2回复 待解决
HarmonyOS 如何对数组进行深拷贝?
467浏览 • 1回复 待解决
#鸿蒙通关秘籍# 如何使用PixelMap进行图片的深拷贝操作并保持性能优化?
341浏览 • 1回复 待解决
ArkTS中如何实现对象的深拷贝?
707浏览 • 1回复 待解决
#鸿蒙通关秘籍# 在HarmonyOS中如何通过PixelMap实现图片深拷贝后的裁剪和保存功能?
130浏览 • 0回复 待解决
HarmonyOS 深拷贝关于list类型如何处理?
236浏览 • 1回复 待解决
HarmonyOS 如何深拷贝一个对象,比如Object.assign({}, jrParam)
150浏览 • 1回复 待解决
HarmonyOS 使用@pro做UI的刷新的时候,如果同步的数据对象特别大,深拷贝会不会存在性能问题?
425浏览 • 1回复 待解决
HarmonyOS PixelMap问题
39浏览 • 1回复 待解决
HarmonyOS PixelMap位图处理问题
194浏览 • 1回复 待解决
#鸿蒙通关秘籍# 如何在鸿蒙开发中通过使用@ObjectLink避免不必要的深拷贝,提高状态管理效率?
266浏览 • 0回复 待解决
HarmonyOS ArkTS中,无法对C对象进行深拷贝,或者序列化,需要把数据转换成@Sendable支持对象
108浏览 • 1回复 待解决
HarmonyOS @Prop和 @link的内存和效率对比,使用大量数据深拷贝的时候,使用link的开销是不是比prop小
202浏览 • 1回复 待解决
HarmonyOS fileIo.copyFileSync拷贝文件到中文目录,拷贝不了
324浏览 • 1回复 待解决
HarmonyOS 文件拷贝示例
109浏览 • 1回复 待解决
HarmonyOS关于沙箱视频拷贝到用户相册的问题
872浏览 • 1回复 待解决
HarmonyOS 相册文件拷贝
98浏览 • 1回复 待解决
HarmonyOS image.PixelMap保存到 相册问题
69浏览 • 1回复 待解决
HarmonyOS Image组件显示PixelMap类型数据问题
227浏览 • 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]…]。