// create image and load external data imgSrc = vgCreateImage(VG_sRGB_565, imgGirlWidth, imgGirlHeight, VG_IMAGE_QUALITY_NONANTIALIASED); vgImageSubData(imgSrc, (const void *)imgDiceAlphaData, imgGirlDataStride, imgGirlFormat, 0, 0, imgGirlWidth, imgGirlHeight); for (j = VG_sRGBX_8888; j <= VG_BW_1; ++j) { imgDst = vgCreateImage(j, imgGirlWidth, imgGirlHeight, VG_IMAGE_QUALITY_NONANTIALIASED); vgCopyImage(imgDst, 0, 0, imgSrc, 0, 0, imgGirlWidth, imgGirlHeight, VG_FALSE); vgGetImageSubData(imgDst, imgOutputDataRGBA, imgGirlDataStride, imgGirlFormat, 0, 0, imgGirlWidth, imgGirlHeight); strcpy(imgFileName, "imgconv_sRGB565_to_"); strcat(imgFileName, imageFormatToString(j)); strcat(imgFileName, ".png"); strcpy(testDesc, "Image conversion from sRGB565 format to "); strcat(testDesc, imageFormatToString(j)); strcat(testDesc, " format."); // pixel format without alpha channel will be saved forcing alpha to 0xFF switch (j) { case VG_sRGBX_8888: case VG_sRGB_565: case VG_sL_8: case VG_lRGBX_8888: case VG_lL_8: case VG_BW_1: saveImage32(f, imgFileName, testDesc, imgGirlWidth, imgGirlHeight, imgOutputDataRGBA, 1); break; default: saveImage32(f, imgFileName, testDesc, imgGirlWidth, imgGirlHeight, imgOutputDataRGBA, 0); } vgDestroyImage(imgDst); } vgDestroyImage(imgSrc);