winfrom 将图片转化成圆形图像

        /// <summary>
        /// 将图片转化成圆形图像
        /// </summary>
        /// <param name="img"></param>
        /// <param name="rec"></param>
        /// <param name="size"></param>
        /// <returns></returns>
        public Bitmap GetRoundPic(Image img)
        {
            int width = img.Width;
            int height = img.Height;
            var length = width;
            if (width > height)
            {
                length = height;
            }
            Rectangle rec = new Rectangle(0, 0, length, length);
            Size size = new Size(length, length);
            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.AntiAlias;
                    g.FillEllipse(br, new Rectangle(Point.Empty, size));
                }
            }
            return bitmap;
        }
发布了6 篇原创文章 · 获赞 0 · 访问量 325

猜你喜欢

转载自blog.csdn.net/qq_21275565/article/details/105570288
今日推荐