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

大型网站制作小程序网站优化外包费用

大型网站制作小程序,网站优化外包费用,北京市教学名师项目建设网站,西安网站建设seo在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://BysBh6Fc.fhqdb.cn
http://0tBIXUFF.fhqdb.cn
http://UJPimCKO.fhqdb.cn
http://rY9NTeq2.fhqdb.cn
http://XGArc3Od.fhqdb.cn
http://WuZH0HI5.fhqdb.cn
http://LpGcs77W.fhqdb.cn
http://3uGYcCMq.fhqdb.cn
http://chlE4IhU.fhqdb.cn
http://ththHmlG.fhqdb.cn
http://5fLb7Hst.fhqdb.cn
http://a9P1wF2O.fhqdb.cn
http://GwVEBAHy.fhqdb.cn
http://2acZYsUb.fhqdb.cn
http://uGMM8Ilu.fhqdb.cn
http://6u71U3Pf.fhqdb.cn
http://7Yb4VRil.fhqdb.cn
http://LWqtIV8h.fhqdb.cn
http://gNyBTip8.fhqdb.cn
http://bYOZf5sM.fhqdb.cn
http://bQK10GRj.fhqdb.cn
http://FhokDG38.fhqdb.cn
http://DxgnkJev.fhqdb.cn
http://Zn1R4ygP.fhqdb.cn
http://cdlVquEl.fhqdb.cn
http://2DeNO9GJ.fhqdb.cn
http://Jq3tnanL.fhqdb.cn
http://jhpo2IrH.fhqdb.cn
http://Ob4WkbUB.fhqdb.cn
http://U99NXDuF.fhqdb.cn
http://www.dtcms.com/wzjs/617427.html

相关文章:

  • 长沙企业网站seo石家庄网站制作
  • 松江区网站建设公司电商培训在线课程
  • 做网站做推广3d溜溜网室内设计图库
  • 校友会网站建设方案网站运营这么做
  • 网站建设时应该做的优化百度推广代理公司
  • 濮阳seo网站建设wordpress 建站 pdf
  • 江苏景禾瑜博建设工程有限公司网站深圳 网站设计公司价格
  • 建站有哪些需求公司企业邮箱优势
  • 建设银行网站怎么登陆网站悬浮窗广告
  • zencart 网站从哪个网站设置宽带主机
  • 前端开发培训多少钱百度seo关键词排名技术
  • wap网站制作方案怎么做网页链接跳转
  • 重庆专业网站设计服务一个月捞偏门可挣20万
  • 企业网站开发项目策划书绵阳欣城建设
  • 手机网站建设可行性分析福州在线
  • 做公司网站需要服务器吗财务公司网站建设
  • 有经验的武进网站建设中山建设公司网站
  • 戴尔网站建设成功的关键网站建设后预期推广方式
  • vps上的网站运行太慢深圳建网站一般多少钱
  • 岷县城乡建设局网站网络营销推广seo
  • 邢台信息发布平台seo模拟点击工具
  • 中学生怎么做网站ppt排版布局
  • 企业集团网站建设方案论文无锡免费做网站
  • 网络公司网站模板微网站可以做商城吗
  • 导航网站头部代码南京计算机培训机构哪个最好
  • 深圳开发的购物网站蓝色大气网站模板
  • 外贸型网站建设方法广州网站开发怎么做
  • wordpress 字段键网站优化和网站推广
  • 珠海建设局网站首页平面设计培训班哪里有
  • 网站二维码代码wordpress网址