HarmonyOS 使用CAPI创建pixelmap设置pixelFormat不生效?

我使用CAPI创建pixelmap转换成ArkUI\_DrawableDescriptor,代码如下

OH_Pixelmap_InitializationOptions* options = nullptr;
OH_PixelmapInitializationOptions_Create(&options);
OH_PixelmapInitializationOptions_SetWidth(options, pixelMapInfo.width);
OH_PixelmapInitializationOptions_SetHeight(options, pixelMapInfo.height);
OH_PixelmapInitializationOptions_SetPixelFormat(options, pixelMapInfo.pixelFormat);
OH_PixelmapInitializationOptions_SetAlphaType(options, PIXELMAP_ALPHA_TYPE_UNKNOWN);
......
Image_ErrorCode ercode = OH_PixelmapNative_CreatePixelmap(buff_data, byte_length, options, &pixelmapNative);
ArkUI_DrawableDescriptor* drawable = OH_ArkUI_DrawableDescriptor_CreateFromPixelMap(pixelmapNative);

这段代码无论我怎么设置PixelFormat,渲染模式始终是BGRA,我不得不手动对位图数据先进行处理

阅读 441
1 个回答

请使用OH\_PixelmapInitializationOptions\_SetSrcPixelFormat

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进