QT 圆形头像绘制方法
QT 圆形头像绘制方法
目标效果:
方法一:
将目标图像转换成圆形。根据图像得到圆形的Pixmap,再将pixmap绘制到label上。
这种方法的优点是不必在意绘制的label的形状是什么。相当于目标图片被裁切成背景透明的圆形图片。
//载入图片
QString path = "D:/123.jpg";
QPixmap pixmap(path);
pixmap = pixmap.scaled(ui.label->size(), Qt::IgnoreAspectRatio, Qt::SmoothTransformation);int width = ui.label->size().width();
int height = ui.label->size().height();QPixmap image(width,height);
image.fill(Qt::transparent);QPainterPath painterPath;
painterPath.addEllipse(0, 0, width, height);QPainter painter(&image);
painter.setRenderHints(QPainter::Antialiasing | QPainter::SmoothPixmapTransform);
painter.setClipPath(painterPath);
painter.drawPixmap(0, 0, width, height, pixmap);
//绘制到label
ui.label->setPixmap(image);
注意:
1.这里的label是高宽相等的;
2.这里的label设置了背景透明。
方法二:
将要显示图像的label设置成圆形。
设置样式:
border-radius: 40px;
border-image: url(D:/123.jpg);
其中40是圆形半径(正方形边长的一半)。一个80*80的label,设置样式border-radius: 40px;
,就会变成圆形:
再为其贴个图,设置border-image属性即可。
如果只是要一个圆形的图标,图片内容不会怎么改变,可以使用这种方法,设置比较简单。
但如果图片在程序运行期间时常改变,建议使用第一种方法。
QT 圆形头像绘制方法相关推荐
- Android使用 CircleImageView 实现圆形头像的方法
圆形头像看起来非常美观,下文通过实例代码给大家介绍android中使用CircleImageView实现圆形头像的方法,一起看看吧 有时我们在应用中会用到圆形头像,下面是利用CircleImageVi ...
- 利用 BitmapShader 制作自带边框圆形头像
目前为止,已经掌握了两种制作圆形头像的方法,一种是利用 PorterDuffXfermode,一种是 Shader 工具.至于选择哪一种方法因人而异,但幸运的是这两种方法的使用都并不难.好了,现在介绍 ...
- Android 自定义View----离屏缓冲和图像混合模式(圆形头像)
这里主要了解下离屏缓冲和图像混合模式,可能在自定义view的时候会用到,绘制的内容也非常简单,一个简单的圆形头像 绘制大概分为5步: 1,开启离屏缓冲 2,绘制一个圆 3,设置图像混合模式 htt ...
- 打造微信圆形头像更换
很多都会发现微信的头像不是圆形,而今天我将浅谈一下,如何实现圆形头像.QQ5.0以后的版本就是圆形头像了而微信不是.当然了实现圆形头像的方法有很多种,可以使用开源的库,可以去写一个自定义的控件,或者去 ...
- android分析之自定义圆形头像
package de.hdodenhof.circleimageview; public class CircleImageView extends ImageView { private stati ...
- 低像素Bitmap圆形头像实现边缘锐化
问题 在项目中从存储设备中读取出的低像素Bitmap(圆形头像,在实现圆形切割的时候出现边缘模糊的情况,在尝试普通的圆形头像实现方法的过程中,发现平时使用的圆形头像方法并不生效,觉得可能是因为画布拉伸 ...
- 微信小程序海报画布生成圆形头像
由于海报需求将用户头像在海报上呈圆形 实现过程如下 // 绘制圆形头像 //绘制的头像宽度let avatarurl_width = 40 //绘制的头像高度let avatarurl_heigth ...
- 如何用Qt抠一个圆形头像出来
如题,如何使用Qt抠一个圆形头像出来? 先来看效果: 首先加载一张图片,显示一个透明圆形,圆形外半透明,滚动鼠标滚轮,圆形区域变大变小. 鼠标按下可以拖动图片移动,来选定要截取的图片位置,按下&quo ...
- Qt自定义控件之圆形按钮、圆形头像
Qt自定义控件之圆形按钮.圆形头像 前言 代码实现 实验效果 前言 现在很多软件的头像或者按钮都是圆形了,看起来比较舒服.比如QQ登录头像,酷狗客户端的一些按钮都是圆形.Qt实现圆形头像,大致有几种思 ...
最新文章
- C4D灯光照明技术学习教程
- 数据结构之直接插入排序
- python中文读音ndarray-numpy中的ndarray方法和属性
- 两个有序链表序列的合并(c语言实现)
- java的默认值规则_Java 8:默认方法解析规则
- Git的多人协作和分支处理测试
- 纠结也好,蛋疼也罢,既然创业了,就把路走好。
- 路由器OpenWRT、LEDE、潘多拉、华硕、梅林、老毛子系统区别和特点
- pipeline离线安装
- 使用 net C 发送邮件(带成功案例)
- POI导出word文件中表格合并方法(行合并,列合并)
- Kettle的“增加序列”(自增字段)的使用
- 流体机械特性曲线 水轮机运转特性曲线
- 微信群营销:有哪些加微信群的渠道?
- Spark Livy
- sympy 符号函数求导
- 利尔达客思之“智能照明”的本质解析
- ISAP 算法的学习
- 消息中间件 RabbitMQ 之 工作队列(2)—消息应答
- 21天战拖记——Day20:整理自己的桌面(2014-05-23)
热门文章
- ADFS3.0/4.0 证书更新/替换
- 验证位置时发生错误:“org.tigris.subversion.javahl.ClientException......
- Linux CPU亲缘性详解
- 高中计算机学考vb,浙江省高中信息技术选考加试题VB专项练习题一及答案
- Spring 5 DI 相关内容 5.3 自动配置 5.3.4 完成自动装配的配置
- portainer简明使用教程
- 《命运赋》--吕蒙正
- emake-Linux学习20201004
- 计算机多cpu如何工作,电脑是如何工作的
- GM(1,1)和GM(1,n)预测模型