C# 等比壓縮圖片,返回固定大小並居中
等比壓縮圖片,返回固定大小並居中,如果圖片不是正方形,周圍就是空白。
/// <summary>
/// 等比壓縮圖片,返回固定大小並居中
/// </summary>
/// <param name="mg"></param>
/// <param name="newSize"></param>
/// <returns></returns>
public static Bitmap ResizeImage(Bitmap mg, Size newSize)
{
double ratio;//壓縮比
int myWidth;
int myHeight;
int x = 0;
int y = 0;
if ((mg.Width / Convert.ToDouble(newSize.Width)) > (mg.Height / Convert.ToDouble(newSize.Height)))
ratio = Convert.ToDouble(mg.Width) / Convert.ToDouble(newSize.Width);
else
ratio = Convert.ToDouble(mg.Height) / Convert.ToDouble(newSize.Height);
myHeight = (int)Math.Ceiling(mg.Height / ratio);
myWidth = (int)Math.Ceiling(mg.Width / ratio);
Bitmap bp = new Bitmap(newSize.Width, newSize.Height);
x = (newSize.Width - myWidth) / 2;
y = (newSize.Height - myHeight) / 2;
System.Drawing.Graphics g = Graphics.FromImage(bp);
g.SmoothingMode = SmoothingMode.HighQuality;
g.InterpolationMode = InterpolationMode.HighQualityBicubic;
g.PixelOffsetMode = PixelOffsetMode.HighQuality;
Rectangle rect = new Rectangle(x, y, myWidth, myHeight);
g.DrawImage(mg, rect, 0, 0, mg.Width, mg.Height, GraphicsUnit.Pixel);
return bp;
}
相關文章
- ASP.NET C# 按原圖片大小等比例縮放生成縮圖ASP.NETC#
- Android 圖片處理之固定視框中的等比例壓縮Android
- JS控制圖片顯示的大小(圖片等比例縮放)JS
- 怎麼轉換圖片格式並壓縮圖片
- 純JS實現圖片預覽與等比例縮放和居中JS
- 等比例縮放圖片 jsJS
- JS中通過指定大小來壓縮圖片JS
- 圖片等比例縮放程式碼
- 圖片壓縮知識梳理(2) 減小 PNG 大小
- 前端圖片壓縮 - H5&Uni-App圖片壓縮前端H5APP
- ??圖片壓縮CanvasCanvas
- IOS圖片壓縮iOS
- canvas 壓縮圖片Canvas
- 給圖片設定了固定寬高還會被壓縮
- 圖片等比例縮放裁切詳解
- JavaScript圖片簡單等比例縮放JavaScript
- JS實現等比例縮放圖片JS
- Nginx網路壓縮 CSS壓縮 圖片壓縮 JSON壓縮NginxCSSJSON
- windows10電腦上怎麼壓縮圖片大小Windows
- asp 獲取圖片的 大小 和畫素 ,解析度,以及壓縮圖片
- 圖片壓縮知識梳理(0) 圖片壓縮學習計劃
- win10怎麼批量把圖片縮小_win10批量壓縮圖片大小的方法Win10
- win10怎麼批次把圖片縮小_win10批次壓縮圖片大小的方法Win10
- Android:ImageView圖片縮放、居中AndroidView
- iOS 圖片壓縮方法iOS
- 前端圖片壓縮方案前端
- js控制圖片等比例縮放程式碼JS
- 利用javascript實現圖片等比例縮放JavaScript
- 前端的圖片壓縮image-compressor(可在圖片上傳前實現圖片壓縮)前端
- 移動端圖片等比例縮放實踐
- Vue3等比例縮放圖片元件Vue元件
- SmallImage for Mac(圖片壓縮工具)Mac
- js上傳圖片壓縮JS
- js圖片壓縮推薦JS
- JNI實現圖片壓縮
- android下圖片壓縮Android
- java後臺壓縮圖片Java
- 【前端】壓縮圖片以及圖片相關概念前端