是否有任何示例 Qt 代码显示来自 unsigned char 显示缓冲区的图像?缓冲区上的每个字节对应于灰度像素颜色。显示缓冲区的内容在运行时以指定的时间间隔更改。我需要尽可能快地更改显示缓冲区内容,以使图像似乎在移动。我的问题是如何快速从缓冲区中绘制像素?我不需要保存图像,只想显示它。请帮忙
问问题
2797 次
1 回答
2
QImage
提供了一个使用缓冲区进行初始化的构造函数。unsigned char
为了显示它,您可以使用 aQGraphicsView
和 a QGraphicsScene
。每次缓冲区的数据发生变化时,您都可以调用类似于以下的插槽:
void updateImage()
{
// I assume an 1024x768 image
QImage img(buffer, 1024, 768, QImage::Format_Indexed8);
scene->clear();
scene->addPixmap(QPixmap::fromImage(img));
graphicsView->update();
}
您还可以使用QPixmap
'sloadFromData
来直接从 unsigned char 数组加载像素图并避免该QImage
步骤。
于 2012-03-12T09:10:29.423 回答