| [点晴永久免费OA]C# 将图片截取成一个圆形
					当前位置:点晴教程→点晴OA办公管理信息系统
					
					→『 经验分享&问题答疑 』
					
				 
             Image imgPhoto = Image.fromFile(@"big.jpg");
            int Width = imgPhoto.Width;
            int Height = imgPhoto.Height;//以上三句代码是为了获取图片长和宽
            int si = 0;//声明裁剪尺寸由于是需要正方形  所以只需要一个变量
            if (Width > Height)//下面判断长和宽哪个值小就用哪个值 因为要裁剪一个正方形
            {
                si = Height;
            }
            else
            {
                si = Width;
            }
            Rectangle theRectangle = new Rectangle(new Point(0, 0), new Size(si, si));//裁剪位置  后面是裁剪尺寸
            Bitmap bmp = new Bitmap(imgPhoto);//转换到可操作的内存中
            Bitmap cloneBitmap = bmp.Clone(theRectangle, PixelFormat.DontCare);
            // 计算圆形区域
            for (int y = 0; y < si; y++)
            {
                for (int x = 0; x < si; x++)
                {
                    if ((x - si / 2) * (x - si / 2) + (y - si / 2) * (y - si / 2) > (si / 2) * (si / 2))
                    {
                        //符合以上条件的为圆以外的区域
                        // 将这些区域设为指定颜色
                        cloneBitmap.SetPixel(x, y, Color.fromArgb(0, 32, 152, 213));//后面三个参数是rgb颜色   三个0表示黑色
                    }
                }
            }
            // 绑定到图片显示控件
            cloneBitmap.Save("Big1.jpg",ImageFormat.Jpeg);该文章在 2022/11/25 15:48:05 编辑过 | 关键字查询 相关文章 正在查询... |