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

个人怎么做ckmov解析网站谷歌搜索引擎入口

个人怎么做ckmov解析网站,谷歌搜索引擎入口,做服装外贸网站,dedecms网站tag标签静态化在Qt中,您可以通过多种方式处理和存储具有非矩形(多规则形状)的图片。以下是几种主要实现方案: 1. 使用透明通道存储不规则形状 实现方法 // 创建带透明背景的QPixmap QPixmap pixmap(400, 400); pixmap.fill(Qt::transparent);QPainter painter(&…

在Qt中,您可以通过多种方式处理和存储具有非矩形(多规则形状)的图片。以下是几种主要实现方案:

1. 使用透明通道存储不规则形状

实现方法

// 创建带透明背景的QPixmap
QPixmap pixmap(400, 400);
pixmap.fill(Qt::transparent);QPainter painter(&pixmap);
painter.setRenderHint(QPainter::Antialiasing);// 绘制多边形形状
QPolygonF hexagon;
for(int i=0; i<6; i++) {double angle = 2 * M_PI * i / 6;hexagon << QPointF(200 + 150*cos(angle), 200 + 150*sin(angle));
}painter.setBrush(QColor(255, 0, 0, 200)); // 半透明红色
painter.setPen(Qt::NoPen);
painter.drawPolygon(hexagon);// 保存为PNG(支持透明通道)
pixmap.save("hexagon.png", "PNG");

2. 使用SVG矢量格式存储

实现方法

// 创建SVG文件
QSvgGenerator generator;
generator.setFileName("shape.svg");
generator.setSize(QSize(400, 400));
generator.setViewBox(QRect(0, 0, 400, 400));QPainter painter;
painter.begin(&generator);// 绘制星形
QPainterPath star;
for(int i=0; i<5; i++) {double outerAngle = 2 * M_PI * i / 5;double innerAngle = 2 * M_PI * (i + 0.5) / 5;star.lineTo(200 + 180*cos(outerAngle), 200 + 180*sin(outerAngle));star.lineTo(200 + 70*cos(innerAngle), 200 + 70*sin(innerAngle));
}
star.closeSubpath();painter.setBrush(Qt::yellow);
painter.setPen(QPen(Qt::black, 3));
painter.drawPath(star);painter.end();

3. 使用图像遮罩(Mask)

实现方法

// 创建位图遮罩
QBitmap mask(400, 400);
mask.clear(); // 初始化为全0(透明)QPainter maskPainter(&mask);
maskPainter.setBrush(Qt::color1); // 不透明部分
maskPainter.setPen(Qt::NoPen);// 绘制圆形遮罩
maskPainter.drawEllipse(QRect(50, 50, 300, 300));
maskPainter.end();// 应用遮罩到图片
QPixmap image("source.jpg");
image.setMask(mask);
image.save("masked.png");

4. 高级方法:使用QPainterPath裁剪

实现方法

QPixmap source("landscape.jpg");
QPixmap result(source.size());
result.fill(Qt::transparent);QPainterPath clipPath;
clipPath.addEllipse(result.rect().adjusted(50, 50, -50, -50));QPainter painter(&result);
painter.setRenderHint(QPainter::Antialiasing);
painter.setClipPath(clipPath);
painter.drawPixmap(0, 0, source);
painter.end();result.save("clipped.png");

5. 存储多形状组合图片

QPixmap canvas(800, 600);
canvas.fill(Qt::transparent);QPainter painter(&canvas);
painter.setRenderHint(QPainter::Antialiasing);// 绘制多个形状
QVector<QPolygonF> shapes;
shapes << createStar(200, 200, 100);
shapes << createHexagon(600, 400, 80);
shapes << createTriangle(400, 100, 120);foreach(const QPolygonF &shape, shapes) {painter.setBrush(QColor(rand()%255, rand()%255, rand()%255, 180));painter.drawPolygon(shape);
}canvas.save("multi_shapes.png");// 创建星形辅助函数
QPolygonF createStar(qreal cx, qreal cy, qreal size) {QPolygonF star;for(int i=0; i<5; i++) {star << QPointF(cx + size*cos(0.8*i*M_PI), cy + size*sin(0.8*i*M_PI));}return star;
}

格式选择建议

格式适用场景优点缺点
PNG位图不规则形状支持透明通道,无损压缩文件较大,缩放会失真
SVG矢量图形无限缩放,文件小不适合照片类图像
WebP网页应用支持透明,压缩率高兼容性较PNG稍差
PDF打印输出矢量质量,多页支持不适合屏幕显示

注意事项

  1. 透明通道:确保使用支持透明的格式(如PNG)

  2. 抗锯齿:绘制时启用QPainter::Antialiasing

  3. 性能:复杂形状建议使用矢量格式

http://www.dtcms.com/wzjs/309183.html

相关文章:

  • 网站开发和嵌入式开发上海seo公司哪个靠谱
  • 如何建设合法的网站seo优化网站网页教学
  • 电商网站制作流程图南通网络推广
  • 北京公司电话大全黄页wp博客seo插件
  • Wordpress慢加内存还是带宽seo排名优化推荐
  • 大都会app下载二维码内部搜索引擎优化
  • 怎么做视频还有网站郑州网络推广代理
  • 杭州企业自助建站系统哪些行业适合做网络推广
  • 哈尔滨门户网站设计报价aso具体优化
  • 动漫网站开发 百度一下软文范例大全200字
  • 做网站都需要买什么软文广告500字
  • 网站建设方案怎样写常德seo公司
  • fw可以做网站北京百度推广代理公司
  • 设计一个网站花多少时间优秀网站设计
  • 做网站编辑器如何推广一个产品
  • 免费域名注册哪个网站好免费建站网站
  • 建网站需要身份证吗外链网站
  • 微网站建设网站北京seo招聘信息
  • 网站用什么软件seo排名优化googleplay官网
  • 税务 网站建设 重视本地建站软件有哪些
  • 做网站那个搜索引擎好下载百度app最新版并安装
  • wordpress虚拟主机安装西安seo关键词排名优化
  • 海曙网站建设网站腾讯广告联盟官网
  • 中山古镇做网站的公司网络优化师
  • 曰本做爰网站襄阳seo
  • 男女做那个的视频网站百度小说排名
  • 淘宝上做网站可信吗上海网站建设开发公司
  • 网站产品后台界面怎么做广告推广渠道有哪些
  • 学生做网站期末作业优化seo软件
  • 做整个网站静态页面多少钱汕头seo优化项目