导读
上一篇我们简单的讲述了如何对指定的Item进行截屏操作,现在我们升级下程序,实现选中截图,先看效果
操作截图

实际效果

我们通过鼠标滑动选中了一个区域,释放鼠标左键后完成矩形绘制。本文在上一篇的基础之上实现选中区域的截图,所以实际效果图还是对指定的item截图,只不过是灵活了写。
构思如下:创建一个frameless、可拖动的窗口,再借助Canvas实现绘制,绘制完毕后将图形数据加载到Image中,这样可以实现对绘制的区域进行拖动. 首先来说绘制,这个绘制是实时的,也就是说每一次鼠标位置的变化都会重新绘制图形。代码如下
onPositionChanged: {
console.log("mouseMove"+mouse.x, mouse.y)
endPoint = Qt.point(mouse.x, mouse.y)
canvas.requestPaint()

本文介绍如何在QML中实现选区截图功能。通过创建一个无边框、可拖动的窗口,结合Canvas进行实时绘制,允许用户自由选择截图区域。在鼠标释放后,使用grabToImage函数保存选区图像,并实现图像的拖动效果。
最低0.47元/天 解锁文章
599





