首页 > 解决方案 > OpenVG:vgCreateImage 是否分配内存

问题描述

我可以使用以下代码创建图像。

int width,height;
static VGImage engine_light_img = VG_INVALID_HANDLE;
// image 
const unsigned char engine_light_bitmap_100_100[40000] =
{...};


width = 300;
height = 150;
engine_light_img = vgCreateImage(VG_sBGRA_8888,800,480, VG_IMAGE_QUALITY_BETTER);
vgImageSubData(engine_light_img, (const void *)(engine_light_bitmap_100_100+ (width * (height - 1)) * 4),width * -4,VG_sBGRA_8888, 0,40,width,height);  
vgSeti(VG_MATRIX_MODE, VG_MATRIX_IMAGE_USER_TO_SURFACE);
vgDrawImage(engine_light_img);
vgFinish();

我正在使用此函数 vgImageSubData加载图像engine_light_bitmap_100_100[40000]的数据。数据在 Flash 中已经是一个占用内存的常量。

我有一个问题,每当我调用函数vgCreateImage时,它​​是否会阻塞 800x400x4 字节的 RAM 内存?

标签: copenvg

解决方案


推荐阅读