如何打印 QGraphicsView 的内容

发布于 2024-09-25 09:14:16 字数 61 浏览 6 评论 0原文

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

多谢。

How can I print the content of a QGraphicsView in Qt?

Thanks a lot.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

自我难过 2024-10-02 09:14:16

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

进一步参考:

“Graphics View 通过其渲染函数 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);
}

Take a look at the official Qt documentation: http://doc.qt.io/archives/4.6/graphicsview.html#printing

For further reference:

"Graphics View provides single-line printing through its rendering functions, QGraphicsScene::render() and QGraphicsView::render(). The functions provide the same API: You can have the scene or the view render all or parts of their contents into any paint device by passing a QPainter to either of the rendering functions. This example shows how to print the whole scene into a full page, using QPrinter."

Example:

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);
}
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文