2013-03-08 36 views
2
unsigned char * image_data; 
int bytes; // size 

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

如何從這些數據創建fipImage *?從unsigned char *(freeimage)創建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 image; 
something like this 
image.load(image_data ,w , h); 
+0

目前還不清楚你在這裏問的是什麼。 – 2013-03-08 08:29:56

回答

2

您可以從原始像素以下方式創建的FreeImage對象創建fipImage:

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

memcpy(FreeImage_GetBits(Bitmap), image_data, Width * Height * (BitsPP/8));