当前位置: 首页 > wzjs >正文

个人网站开发可行性报告建设地产网站

个人网站开发可行性报告,建设地产网站,软件开发文档用什么写,宁波建站推广技术公司背景 不规则区域进行截图是一种常见的应用场景,通常用于程序截图工具或者图像处理软件中。主要是为了让用户可以自由选择任意形状的区域进行截图,而不仅仅局限于矩形区域。这样用户可以更灵活地进行截图操作,特别是对于需要截取特定形状区域…

背景

不规则区域进行截图是一种常见的应用场景,通常用于程序截图工具或者图像处理软件中。主要是为了让用户可以自由选择任意形状的区域进行截图,而不仅仅局限于矩形区域。这样用户可以更灵活地进行截图操作,特别是对于需要截取特定形状区域的情况下非常实用。

通过实现鼠标自由选择不规则区域进行截图,用户可以更精确地选择需要截取的内容,避免不必要的部分被包含在截图中。

效果

先来看下运行效果:
在这里插入图片描述
截图效果:
在这里插入图片描述

在这里插入图片描述
可以看到,截图内容是根据鼠标自由选区来截取不规则的图形,其他区域为透明的。

关键代码

实现逻辑是在QML中鼠标选区记录坐标点,然后截取整个屏幕画面,根据坐标点将图片内容拷贝出来生成新的图片。

保存部分的代码:

void ScreenshotController::saveScreenshot(const QVariantList &points, const QString &format)
{if (!m_isCapturing || points.size() < 3) {qWarning() << "Cannot save screenshot: not capturing or invalid points";return;}// 创建路径掩码QPainterPath path;QPolygon polygon;// 添加所有点到路径和多边形if (points.size() > 0) {QPointF firstPoint = points[0].toPointF();path.moveTo(firstPoint);polygon << QPoint(firstPoint.x(), firstPoint.y());for (int i = 1; i < points.size(); i++) {QPointF p = points[i].toPointF();path.lineTo(p);polygon << QPoint(p.x(), p.y());qDebug() <<__FUNCTION__<< "point=" << p;}// 闭合路径path.closeSubpath();}// 获取选区的边界矩形QRect boundingRect = polygon.boundingRect();// 创建一个与边界矩形大小相同的透明pixmapQPixmap croppedResult(boundingRect.size());croppedResult.fill(Qt::transparent);// 创建QPainter在新的pixmap上绘制QPainter painter(&croppedResult);// 将路径移动到相对于边界矩形的位置path.translate(-boundingRect.topLeft());// 设置剪切路径,只绘制路径内的内容painter.setClipPath(path);// 绘制原始截图的对应部分painter.drawPixmap(0, 0, m_originalPixmap, boundingRect.x(), boundingRect.y(), boundingRect.width(), boundingRect.height());// 结束绘制painter.end();// 生成默认文件名QString defaultFileName = QStandardPaths::writableLocation(QStandardPaths::PicturesLocation) + "/screenshot_" + QDateTime::currentDateTime().toString("yyyyMMdd_hhmmss") + "." + format.toLower();// 打开文件保存对话框QString filePath = QFileDialog::getSaveFileName(nullptr, tr("Save Screenshot"), defaultFileName, tr("Images (*.%1)").arg(format.toLower()));if (!filePath.isEmpty()) {// 保存截图if (croppedResult.save(filePath, format.toUtf8().constData())) {qDebug() << "Screenshot saved to:" << filePath;emit captureSaved(filePath);} else {qWarning() << "Failed to save screenshot to:" << filePath;}}// 重置状态m_isCapturing = false;emit isCapturingChanged();
}

源代码下载


文章转载自:

http://yeqZ4vVZ.wpLbs.cn
http://B8WdFfsP.wpLbs.cn
http://b5NriBNo.wpLbs.cn
http://r5JaDyFT.wpLbs.cn
http://RzeamVX9.wpLbs.cn
http://yMBkbFSn.wpLbs.cn
http://lN5L1yNW.wpLbs.cn
http://MSBhlRyL.wpLbs.cn
http://xu9yjDgA.wpLbs.cn
http://mq4DVX7T.wpLbs.cn
http://eRhvfdqJ.wpLbs.cn
http://tOGtVlDa.wpLbs.cn
http://suxIZW0I.wpLbs.cn
http://8DRAYN63.wpLbs.cn
http://QCOfsmLW.wpLbs.cn
http://lh0WOuGe.wpLbs.cn
http://BBDwwjJW.wpLbs.cn
http://fKOgAWBf.wpLbs.cn
http://2liRqyAC.wpLbs.cn
http://VaxOxiIo.wpLbs.cn
http://6Qh1yRyq.wpLbs.cn
http://rRcREtjT.wpLbs.cn
http://zeW1IKlD.wpLbs.cn
http://JlWj2W5N.wpLbs.cn
http://AFqYUgGh.wpLbs.cn
http://H8AWklKc.wpLbs.cn
http://ZzkU5X8m.wpLbs.cn
http://UgyCoUoY.wpLbs.cn
http://Wsh1Xi6t.wpLbs.cn
http://makP1ASE.wpLbs.cn
http://www.dtcms.com/wzjs/639532.html

相关文章:

  • 中国建设银行网站余额查询产品的网络推广要点
  • 做网站海口网站建设公司如何找客户
  • 想在微信公众号上做网站链接企业建站方案
  • 吉林网络公司网站建设公司已有网站 如何自己做推广
  • 网站查询ip专业的网页设计服务公司
  • 网站的设计思想wordpress 数据库解析
  • 自己做网站域名域名查询网址
  • 兴义网站开发seo优化培训学校
  • 阿里云虚拟主机可以做几个网站WORDPRESS添加注册登入功能
  • 做家教什么网站wordpress会员推广下载支付插件
  • 手机评测哪个网站做的好点南通开发区:高质量发展
  • 织梦网站上传的文章只显示摘要不显示内容如何修改wordpress七牛视频教程
  • 网站工程师是做什么的百度智能建站系统
  • 工程建设管理网站源码符合网络营销的网站
  • 即墨网站优化兰州市建设厅网站
  • 长春网站建设厂家专题网站开发 交互方法
  • 90设计网站可以商用吗英文网站怎么推广
  • 交互网站图免费网页代理在线
  • 网站免费模板制作潮州外贸网站建设
  • 滕州网站架设wordpress 微信连接数据库文件
  • 做网站排名软件玩具网站建设策划书流程
  • 常德海关网站中国建设银行电话95533
  • 触摸屏网站建设网页导航条制作教程
  • 网站流量统计表北京工装装饰公司排行榜
  • 网站宝二级域名怎么设置深圳教育网站设计公司
  • 牛商网专注营销型网站建设360营销平台
  • 网站建设价格明细表公司网站做一下多少钱
  • 山西省建设厅勘察设计协会网站360搜索引擎
  • 宿迁怎样建设网站wordpress网址导航页面
  • 幕墙配件在那个网站做推广好杭州北京网站建设