是否可以捕获QML组件的屏幕渲染并将其保存到图像文件中?我想通过几个不同的状态驱动组件,并捕获其视觉外观以进行文档目的,而无需进行屏幕/窗口捕获。
是的,您可以设置状态过渡以调用QWidget::grab
,然后通过QPixmap
保存到文件。
如果您需要一个如何设置代码来调用QWidget::grab
的示例,请查看以下答案:如何获取屏幕截图qt/qml
用QWidget::grab
替换QPixmap::grabWidget
很重要,因为QPixmap::grabWidget
现在已过时。从QWidget::grab
获得QPixmap
后,请按照QPixmap
中的文档保存到您想要的格式,例如JPEG,PNG,GIF。
这里有一些文档的链接可以帮助您。
qwidget :: grab
qpixmap
qpixmap ::保存
使用qt 5.4使用grabtoimage变得更容易 - 此方法位于所有qquickitem对象上。
编辑值得一提的是,您称之为grabtoimage()的项目必须是顶级窗口项目容器的孩子