在GTK中在屏幕上绘制RGB图像数据的简单方法

时间:2010-12-03 22:02:59

标签: c image gtk rgb

我在Google上找到了一些解决方案但是它们看起来都很冗长而且过于复杂,所以我决定在这里问一下。

我的问题很简单,我想在屏幕上绘制一些RGB 24位像素。

在Qt中,我会这样做(x和y是图像的高度和宽度,数据指向24位RGB像素):

QImage graph((uchar *)data, x, y, QImage::Format_RGB888);
QLabel *label = new QLabel();
label->setPixmap(QPixmap::fromImage(graph));
label->setFixedSize(x, y);
label->show();

在C / GTK中有同样干净的方法吗?

提前致谢。

1 个答案:

答案 0 :(得分:1)

对此的一个解决方案是一起使用openCV和GTK +。首先创建一个IplImage *(默认情况下它的BRG,你必须将它转换为RGB)并创建一个GdkPixbuf *。从像素缓冲区,您可以在GtkImage *中设置图像。我在这里写了博客:http://subinsebastien.tumblr.com/post/2839808825/opencv-gtk-and-a-day

希望这会有所帮助......