2
unsigned char * image_data;
int bytes; // size

format:
RGBA , UNSIGNED_BYTE.
(opengl-glGetTexImage()):

如何从这些数据中创建 fipImage*?

C++。


unsigned char * image_data;
int w = 1000;
int h = 1000;

此函数写入 image_data

glGetTexImage(GL_TEXTURE_2D, 0 , GL_RGBA , GL_UNSIGNED_BYTE , image_data);

我想从 image_data 创建 fipImage

fipImage image;
something like this
image.load(image_data ,w , h);
4

1 回答 1

2

您可以通过以下方式从原始像素创建 FreeImage 对象:

FIBITMAP* Bitmap = FreeImage_Allocate( Width, Height, BitsPP, 0, 0, 0 );

memcpy( FreeImage_GetBits( Bitmap ), image_data, Width * Height * ( BitsPP / 8 ) );
于 2013-07-03T15:48:23.533 回答