您的位置:首页 > 其它

图片切割方法

2015-07-20 17:18 405 查看
public void SplitImg(string imgName, int part)
{
string path = Server.MapPath(@"nf\");
System.Drawing.Image img = System.Drawing.Image.FromFile(path + imgName);
int cutWidth;
int cutHeight;
int lastWidth;
int index;
lastWidth = img.Width;
cutHeight = img.Height;
cutWidth = img.Width / part;
index = imgName.IndexOf(".");

for (int i = 1; i <= part; i++)
{
if (i != part)
{
lastWidth = lastWidth - cutWidth;
System.Drawing.Bitmap bm = new System.Drawing.Bitmap(cutWidth, cutHeight, System.Drawing.Imaging.PixelFormat.Format24bppRgb);
System.Drawing.Graphics gh = System.Drawing.Graphics.FromImage(bm);
gh.DrawImage(img, new System.Drawing.Rectangle(0, 0, cutWidth, cutHeight), (i - 1) * cutWidth, 0, cutWidth, cutHeight, System.Drawing.GraphicsUnit.Pixel);
bm.Save(path + imgName.Substring(0, index) + i + ".jpeg", System.Drawing.Imaging.ImageFormat.Jpeg);
}
else
{
System.Drawing.Bitmap bm = new System.Drawing.Bitmap(lastWidth, cutHeight, System.Drawing.Imaging.PixelFormat.Format24bppRgb);
System.Drawing.Graphics gh = System.Drawing.Graphics.FromImage(bm);
gh.DrawImage(img, new System.Drawing.Rectangle(0, 0, lastWidth, cutHeight), img.Width - lastWidth, 0, lastWidth, cutHeight, System.Drawing.GraphicsUnit.Pixel);
bm.Save(path + imgName.Substring(0, index) + i + ".jpeg", System.Drawing.Imaging.ImageFormat.Jpeg);

}
}
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: