HarmonyOS 如果传入的buffer是对应的pixelFormat(如 RGBA)数据,是否会将图片编码为jpeg

这里如果传入的buffer是对应的pixelFormat(如 RGBA)数据,SDK内部会将图片编码为jpeg吗?

相关文档链接:https://developer.huawei.com/consumer/cn/doc/harmonyos-guides-V5/image-packer-c-V5

//创建Pixelmap实例
OH_Pixelmap_InitializationOptions *createOpts;
OH_PixelmapInitializationOptions_Create(&createOpts);
OH_PixelmapInitializationOptions_SetWidth(createOpts, 6);
OH_PixelmapInitializationOptions_SetHeight(createOpts, 4);
OH_PixelmapInitializationOptions_SetPixelFormat(createOpts, 3);
OH_PixelmapInitializationOptions_SetAlphaType(createOpts, 0);
OH_PixelmapNative *pixelmap = nullptr;
errCode = OH_PixelmapNative_CreatePixelmap(buffer, bufferSize, createOpts, &pixelmap);
if (errCode != IMAGE_SUCCESS) {
  OH_LOG_ERROR(LOG_APP, "ImagePackerNativeCTest OH_PixelmapNative_CreatePixelmap  failed, errCode: %{public}d.", errCode);
  return errCode;
}

//指定打包参数,将PixelMap图片源编码后直接打包进文件
OH_PackingOptions *option = nullptr;
OH_PackingOptions_Create(&option);
char type[] = "image/jpeg";
Image_MimeType image_MimeType = {type, strlen(type)};
OH_PackingOptions_SetMimeType(option, &image_MimeType);
errCode = OH_ImagePackerNative_PackToFileFromPixelmap(testPacker, option, pixelmap, fd);
if (errCode != IMAGE_SUCCESS) {
  OH_LOG_ERROR(LOG_APP, "ImagePackerNativeCTest OH_ImagePackerNative_PackToFileFromPixelmap  failed, errCode: %{public}d.", errCode);
  return errCode;
}
HarmonyOS
2024-12-25 15:48:05
浏览
收藏 0
回答 1
待解决
回答 1
按赞同
/
按时间
FengTianYa

压缩为jpeg是在OH_ImagePackerNative_PackToFileFromPixelmap中实现的。

分享
微博
QQ
微信
回复
2024-12-25 18:17:22
相关问题
验证pixelmap数据buffer转base64是否正常
2063浏览 • 1回复 待解决
HarmonyOS 图片二进制流jpeg格式转换
49浏览 • 1回复 待解决
Color.Black如何转成对应颜色编码
2197浏览 • 1回复 待解决
HarmonyOS 图片编码打包报错
441浏览 • 1回复 待解决