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;
}
  • 1.
  • 2.
  • 3.
  • 4.
  • 5.
  • 6.
  • 7.
  • 8.
  • 9.
  • 10.
  • 11.
  • 12.
  • 13.
  • 14.
  • 15.
  • 16.
  • 17.
  • 18.
  • 19.
  • 20.
  • 21.
  • 22.
  • 23.
  • 24.
  • 25.
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是否正常
2721浏览 • 1回复 待解决
HarmonyOS 图片二进制流jpeg格式转换
725浏览 • 1回复 待解决
Color.Black如何转成对应颜色编码
2763浏览 • 1回复 待解决
HarmonyOS 图片编码打包报错
922浏览 • 1回复 待解决