查看官方Qt文档:http://doc.qt.io/archives/4.6/graphicsview.html#printing
供进一步参考:
"图形视图通过其渲染功能提供单行打印,QGraphicsScene::render()并且QGraphicsView::render().这些函数提供相同的API:您可以将场景或视图通过传递QPainter给任一渲染函数将其全部或部分内容渲染到任何绘图设备中这个例子展示了如何使用整个场景打印整个场景QPrinter."
例:
QGraphicsScene scene;
scene.addRect(QRectF(0, 0, 100, 200), QPen(Qt::black), QBrush(Qt::green));
QPrinter printer;
if (QPrintDialog(&printer).exec() == QDialog::Accepted) {
QPainter painter(&printer);
painter.setRenderHint(QPainter::Antialiasing);
scene.render(&painter);
}
Run Code Online (Sandbox Code Playgroud)