qt 截图 视频 截屏幕 截窗口

近期在做一个项目,用directshow将换面渲染到qt窗口上,希望能通过截图方式将画面渲染出来,网上中文的查了很多,绝大部分调用widget中的grab()  或者调用QPixmap中的grabwidget() ,者两个方式都无法获取到directshow渲染中的画面。

后来通过参考:

https://blog.csdn.net/huangqi734044860/article/details/61194287

调用如下代码

QScreen *screen = QGuiApplication::primaryScreen();
screen->grabWindow(this->winId()).save("E:/temp/temp/out1.png");

成功将渲染好的视频画面的窗体截图保存下来。

传入窗体的id,能将该窗体所在区域截取下来。

需要注意的是grabwindow 如果传入参数为0 表示抓取屏幕

如果是多屏幕(qt中将所有屏幕都看做0号id),则通过后面的参数来设置偏移。

grabWindow(0,500,0,1920,1080)
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值