//从当前场景获取所有Item
QList<QGraphicsItem *> itemList = m_pScene->items();
//1. 从读取图片
Mat matRGB = imread("/home/mark/Desktop/opencv.bmp");
QImage qImage(matRGB.data, matRGB.cols, matRGB.rows, QImage::Format_RGB888);
//2. 新建一个场景与现在的一样大小,因为需要把Item渲染到image上
QGraphicsScene *pScene = new QGraphicsScene(0, 0, matRGB.cols, matRGB.rows);
for (int i = 0; i < itemList.count(); i++)
{
pScene->addItem(itemList.at(i)->clone());
}
//3. 在QImage基础上把场景的图形画上去
QPainter *painter = new QPainter(&qImage);
painter->setRenderHint(QPainter::Antialiasing);
pScene->render(painter, qImage.rect(), qImage.rect());
delete painter;
//