c#实现缩放和剪裁图片的方法示例

  

本文实例讲述了c#实现缩放和剪裁图片的方法。分享给大家供大家参考,具体如下:

        使用系统;   使用System.Collections.Generic;   使用text;   使用System.Drawing;   使用System.Drawing.Drawing2D;   使用System.Drawing.Imaging;   名称空间项目   {   类ImageOperation   {///& lt; summary>///调整图片///& lt;/summary>///& lt;参数name=" bmp在原始位图& lt;/param>///& lt;参数name=" newW祝辞新的宽度& lt;/param>///& lt;参数name=" newH祝辞新的高度& lt;/param>///& lt;参数name=澳J健钡脑诒A糇?暂时未用& lt;/param>///& lt; returns>处理以后的图片& lt;/returns>   公共静态位图ResizeImage(位图bmp、int newW int newH, int模式)   {   试一试   {   位图b=新的位图(newW newH);   图g=Graphics.FromImage (b);//插值算法的质量   g。InterpolationMode=InterpolationMode.HighQualityBicubic;   g。DrawImage (bmp、新矩形(0,0,newW newH),新的矩形(0,0,bmp。宽度,bmp.Height), GraphicsUnit.Pixel);   g.Dispose ();   返回b;   }   抓   {   返回null;   }   }///& lt; summary>///剪裁——用GDI +///& lt;/summary>///& lt;参数name=" b "在原始Bitmap///& lt;参数name=" StartX祝辞开始坐标X///& lt;参数name=" StartY祝辞开始坐标Y///& lt;参数name=" iWidth祝辞宽度& lt;/param>///& lt;参数name=" iHeight祝辞高度& lt;/param>///& lt; returns>剪裁后的Bitmap   公共静态位图切(位图b, int StartX, int StartY, int iWidth, int iHeight)   {   if (b==null)   {   返回null;   }   int w=b.Width;   int h=b.Height;   如果(StartX祝辞=w | | StartY祝辞=h)   {   返回null;   }   如果(StartX + iWidth祝辞w)   {   iWidth=w - StartX;   }   如果(StartY + iHeight祝辞h)   {   iHeight=h - StartY;   }   试一试   {   位图bmpOut=新的位图(iWidth、iHeight PixelFormat.Format24bppRgb);   图g=Graphics.FromImage (bmpOut);   g。DrawImage (b,新的矩形(0,0,iWidth iHeight),新矩形(StartX、StartY iWidth, iHeight), GraphicsUnit.Pixel);   g.Dispose ();   返回bmpOut;   }   抓   {   返回null;   }   }   }   }      之前      

目标其实都是<代码>新矩形(0,0,iWidth iHeight)> 新矩形(0,0,bmp。宽度,bmp.Height)>   

更多关于c#相关内容感兴趣的读者可查看本站专题:《c#图片操作技巧汇总》、《c#常见控件用法教程》、《WinForm控件用法总结》,《c#数据结构与算法教程》、《c#面向对象程序设计入门教程》及《c#程序设计之线程使用技巧总结》

  

希望本文所述对大家c#程序设计有所帮助。

c#实现缩放和剪裁图片的方法示例