asp.net 图片裁切

//图片路径
            String oldPath = Server.MapPath("/111.jpg");
            //新图片路径
            String newPath = System.IO.Path.GetExtension(oldPath);
            //设置截取的坐标和大小
            int x = 500, y = 0, width = 500, height = 500;


            //计算新的文件名,在旧文件名后加_new
            newPath = oldPath.Substring(0, oldPath.Length - newPath.Length) + "_new" + newPath;
            Response.Write(oldPath);
            Response.Write("<br>");
            Response.Write(newPath);
            Response.Write("<br>");
            //定义截取矩形
            System.Drawing.Rectangle cropArea = new System.Drawing.Rectangle(x, y,width, height); //要截取的区域大小


            //加载图片
            System.Drawing.Image img = System.Drawing.Image.FromStream(new System.IO.MemoryStream(System.IO.File.ReadAllBytes(oldPath)));


            //判断超出的位置否
            if ((img.Width < x + width) || img.Height < y + height)
            {
                Response.Write("截取的区域超过了图片本身的高度、宽度.");
                img.Dispose();
                return;
            }
            //定义Bitmap对象
            System.Drawing.Bitmap bmpImage = new System.Drawing.Bitmap(img);


            //进行裁剪
            System.Drawing.Bitmap bmpCrop = bmpImage.Clone(cropArea, bmpImage.PixelFormat);


            //保存成新文件
            bmpCrop.Save(newPath);


            //释放对象
            img.Dispose();
            bmpCrop.Dispose();
            Response.Write("裁切成功");

郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。