zoukankan      html  css  js  c++  java
  • C#实现将图片设置成圆形形式显示

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

     然后分别设置控件的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/

  • 相关阅读:
    c# 事件阻断
    正则语义化API
    c# 防止继承和单例
    Maxscript 控制流混淆
    3dmax快速安装补丁的方法
    c# 使用类中的方法更新自己
    Maxscript 变量作用域
    Maxscript 键值对
    Maxscript 数据结构和算法记录
    Datawhale 之NLP学习-打卡(五)
  • 原文地址:https://www.cnblogs.com/my1227/p/11654530.html
Copyright © 2011-2022 走看看