1

我将如何将图像(.png 文件)中的像素转换为整数数组,其中每个像素都转换为其 ARGB 整数等效值?顺便说一下,不是 2D 整数数组,而是 1D 数组(通过数组 [row*width+col] 访问)。

谢谢。

4

2 回答 2

1

将图像数据读取到某个缓冲区后,普通演员应该可以解决问题:

GdkPixbuf *pixbuf = gdk_pixbuf_new_from_file ("image.png", NULL);
unsigned char *pixels = gdk_pixbuf_get_pixels (pixbuf);
int *array = reinterpret_cast<int*>(pixels);

示例使用 GdkPixbuf 库,但其他库应该类似。

于 2010-04-17T20:24:01.297 回答
0

除非您是出于兴趣和学习而这样做,否则我建议您使用第三方库,例如ImageMagick
这将节省您的时间(并避免错误)

于 2010-04-17T20:13:48.907 回答