如何在Qt中打印QGraphicsView的内容?

非常感谢。

最佳答案

查看官方Qt文档:http://doc.qt.io/archives/4.6/graphicsview.html#printing

进一步引用:

“Graphics View通过其渲染功能QGraphicsScene::render()QGraphicsView::render()提供单行打印。这些功能提供了相同的API:您可以通过将QPainter传递给以下任意一种,使场景或 View 将其全部或部分内容渲染到任何绘画设备中该示例演示了如何使用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);
}

关于c++ - 如何打印QGraphicsView的内容,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/3803170/

10-13 08:23