如何在C或C ++中将图像的像素加载到2D数组中?
答案 0 :(得分:0)
您可以使用DevIL (openil)将图像文件加载到ILubyte数组中:
ILubyte *Lump;
ILuint Size;
FILE *File;
File = fopen("monkey.tga", "rb");
fseek(File, 0, SEEK_END);
Size = ftell(File);
Lump = (ILubyte*)malloc(Size);
fseek(File, 0, SEEK_SET);
fread(Lump, 1, Size, File);
fclose(File);
ilLoadL(IL_TGA, Lump, Size);
free(Lump);
第一个字节为红色,第二个字节为绿色,第三个字节为蓝色,依此类推。如果你想要一个2d数组,那么编写嵌套循环可能是个好主意。