发送缩放到打印机的小部件内容

Posted

技术标签:

【中文标题】发送缩放到打印机的小部件内容【英文标题】:Send widgets content scaled to printer 【发布时间】:2015-01-05 23:20:19 【问题描述】:

我正在使用QWidget.grab 获取包含组件当前显示内容的像素图。除了不适合我的打印要求的组件尺寸之外,它可以完美地工作。

有没有办法让我可以抓取特定大小的组件的像素图?

【问题讨论】:

提供一些代码。如果你这样问,回答这个问题是不太可行的。 【参考方案1】:

Qt5 中的QPixMap.grab() 和Qt4 中的QPixMap.grabWidget() 以屏幕分辨率(即自然绘画分辨率)获取已绘制小部件的像素图。使用 rectangle 参数你甚至可以得到部件的一部分。

自然输出分辨率是小部件自己的屏幕分辨率。但之后您可以通过QPixMap.scaled() 将其缩放到您喜欢的任何内容,以符合您的打印要求。

在抓取时更改(简单缩放)绘画分辨率实际上会很好。但我不知道有什么方法可以做到这一点。

【讨论】:

QPixmap.grabWidget 在 PyQt5 中被替换为 QWidget.grab @Lerp 谢谢你的评论。我改变了。

以上是关于发送缩放到打印机的小部件内容的主要内容,如果未能解决你的问题,请参考以下文章

URLImage 从不在 SwiftUI 的小部件应用程序中加载图像 [重复]

C# 图片缩放打印

将 PDF 设置为不缩放打印

如何将所有分类结果打印到 GUI 上的文本小部件?

发送多种意图的小部件

将视图文件中的值发送到 yii 中的小部件