程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> .NET網頁編程 >> C# >> C#入門知識 >> 一段裁切圖片的代碼

一段裁切圖片的代碼

編輯:C#入門知識

完整代碼如下:

C# 代碼
//圖片路徑
String oldPath = Server.MapPath("~/aaaa.jpg");

//新圖片路徑
String newPath = System.IO.Path.GetExtension(oldPath);

//設置截取的坐標和大小
int x = 0, y = 10, width = 200, height = 200;

//計算新的文件名,在舊文件名後加_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);

//進行裁剪 www.2cto.com
System.Drawing.Bitmap bmpCrop = bmpImage.Clone(cropArea, bmpImage.PixelFormat);

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

//釋放對象
img.Dispose();
bmpCrop.Dispose();
 
作者 孟憲會

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved