QT软件开发: 截取全屏、指定位置、当前窗口保存图片

简介: QT软件开发: 截取全屏、指定位置、当前窗口保存图片

一、环境介绍

QT : 5.12.6

操作系统: win10 x64

编译器: MinGW32

二、示例代码

头文件

#include <QScreen>
#include <QTimer>
connect(&timer, SIGNAL(timeout()), this, SLOT(update()));
timer.start(50);

2.1 截取全屏保存为图片

void Form::update()
{
    static int cnt=0;
    QScreen *screen = QGuiApplication::primaryScreen();
    //截取当前桌面全屏画面
    screen->grabWindow(0).save(QString("%1.jpg").arg(cnt++));
}

2.2 截取窗口指定位置保存图片

void Form::update()
{
    static int cnt=0;
    QScreen *screen = QGuiApplication::primaryScreen();
    QRect rect;
    rect.setX(this->mapToGlobal(this->pos()).x());
    rect.setY(this->mapToGlobal(this->pos()).y());
    rect.setWidth(this->width());
    rect.setHeight(this->height());
    screen->grabWindow(0,rect.x(),rect.y(),rect.width(),rect.height()).save(QString("%1.jpg").arg(cnt++));//截取当前桌面
}

image.png

2.3 截取当前窗口保存为图片

void Form::update()
{
    //截取当前窗口画面.---不能透过窗口截后面
    this->grab().save(QString("%1.jpg").arg(cnt++));
}


目录
相关文章
|
4月前
|
C++ Windows
Qt 窗口置顶
Qt 窗口置顶
136 1
|
4月前
|
计算机视觉
使用QT显示OpenCV读取的图片
使用QT显示OpenCV读取的图片
108 1
|
4月前
【Qt 学习笔记】Qt窗口 | 标准对话框 | 输入对话框QInputDialog
【Qt 学习笔记】Qt窗口 | 标准对话框 | 输入对话框QInputDialog
338 3
|
4月前
|
数据可视化
【Qt 学习笔记】Qt窗口 | 标准对话框 | 字体对话框QFontDialog
【Qt 学习笔记】Qt窗口 | 标准对话框 | 字体对话框QFontDialog
112 3
|
4月前
【qt】视口和窗口坐标
【qt】视口和窗口坐标
40 0
|
4月前
|
算法 数据安全/隐私保护
【qt】启动窗口的玩法
【qt】启动窗口的玩法
38 0
|
4月前
【qt】多窗口开发
【qt】多窗口开发
78 0
|
5月前
|
数据安全/隐私保护 C++ 计算机视觉
Qt(C++)开发一款图片防盗用水印制作小工具
文本水印是一种常用的防盗用手段,可以将文本信息嵌入到图片、视频等文件中,用于识别和证明文件的版权归属。在数字化和网络化的时代,大量的原创作品容易被不法分子盗用或侵犯版权,因此加入文本水印成为了保护原创作品和维护知识产权的必要手段。 通常情况下,文本水印可以包含版权声明、制作者姓名、日期、网址等信息,以帮助识别文件的来源和版权归属。同时,为了增强防盗用效果,文本水印通常会采用字体、颜色、角度等多种组合方式,使得水印难以被删除或篡改,有效地降低了盗用意愿和风险。 开发人员可以使用图像处理技术和编程语言实现文本水印的功能,例如使用Qt的QPainter类进行文本绘制操作,将文本信息嵌入到图片中,
205 1
|
4月前
|
监控 C++ 容器
【qt】MDI多文档界面开发
【qt】MDI多文档界面开发
119 0