如何在Qt中打印QGraphicsView
的内容?
非常感谢。
答案 0 :(得分:5)
查看官方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);
}