我在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中有同样干净的方法吗?
提前致谢。
答案 0 :(得分:1)
对此的一个解决方案是一起使用openCV和GTK +。首先创建一个IplImage *(默认情况下它的BRG,你必须将它转换为RGB)并创建一个GdkPixbuf *。从像素缓冲区,您可以在GtkImage *中设置图像。我在这里写了博客:http://subinsebastien.tumblr.com/post/2839808825/opencv-gtk-and-a-day
希望这会有所帮助......