欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

C#实现将图片设置成圆形形式显示

程序员文章站 2022-04-29 15:34:19
首先在Form中添加一个控件,然后将控件的背景BackColor设置成透明 、 然后分别设置控件的Image: Image image = Image.FromFile(UserLoginInfor.LoginInfor.userIco); 获取image的width、height:width= i ......

首先在form中添加一个控件,然后将控件的背景backcolor设置成透明

C#实现将图片设置成圆形形式显示

 

 然后分别设置控件的image: image image = image.fromfile(userlogininfor.logininfor.userico);

获取image的width、height:width= image.width、height=image.height

 然后实现该功能,具体代码如下:(picturebox1:控件的名称)

image image = image.fromfile(userlogininfor.logininfor.userico);
this.picturebox1.image = cutellipse(image.fromfile(userlogininfor.logininfor.userico), new rectangle(0, 0,image .width, image .height), new size(image .width, image .height));

最后创建一个自定义方法cutellipse:

 private image cutellipse(image img, rectangle rec, size size)
        {
            bitmap bitmap = new bitmap(size.width, size.height);
            using (graphics g = graphics.fromimage(bitmap))
            {
                using (texturebrush br = new texturebrush(img, system.drawing.drawing2d.wrapmode.clamp, rec))
                {
                    br.scaletransform(bitmap.width / (float)rec.width, bitmap.height / (float)rec.height);
                    g.smoothingmode = system.drawing.drawing2d.smoothingmode.highquality;
                    g.fillellipse(br, new rectangle(point.empty, size));
                }
            }
            return bitmap;
        }

参考网址:https://q.cnblogs.com/q/11565/