Я не пробовал это, но это идея, как это сделать.
Вы можете сделать это несколькими способами. Одна форма выглядит следующим образом:
QGraphicsView* view = new QGraphicsView(scene,this);
QString fileName = "file_name.png";
QPixmap pixMap = view->grab(view->sceneRect().toRect());
pixMap.save(fileName);
//Uses QWidget::grab function to create a pixmap and paints the QGraphicsView inside it.
Другая - использовать функцию рендеринга QGraphicsScene :: render ():
QImage image(fn);
QPainter painter(&image);
painter.setRenderHint(QPainter::Antialiasing);
scene.render(&painter);
image.save("file_name.png")