国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > C# > 正文

C#圖片截取壓縮(百分比壓縮/大小壓縮)實現代碼

2024-09-07 17:05:22
字體:
來源:轉載
供稿:網友
前端時間朋友要傳一些圖片給我,全是大圖,考慮到網速的限制,讓他處理下圖片大小再給我,這廝居然不知道用什么工具.

為了娛樂寫了個截取圖片和壓縮圖片你的小工具
1.按照百分比截圖
代碼如下:
View Code
/// <summary>
/// 按照比例縮小圖片
/// </summary>
/// <param name="srcImage">要縮小的圖片</param>
/// <param name="percent">縮小比例</param>
/// <returns>縮小后的結果</returns>
public static Bitmap PercentImage(Image srcImage, double percent)
{
// 縮小后的高度
int newH = int.Parse(Math.Round(srcImage.Height * percent).ToString());
// 縮小后的寬度
int newW = int.Parse(Math.Round(srcImage.Width * percent).ToString());
try
{
// 要保存到的圖片
Bitmap b = new Bitmap(newW, newH);
Graphics g = Graphics.FromImage(b);
// 插值算法的質量
g.InterpolationMode = InterpolationMode.Default;
g.DrawImage(srcImage, new Rectangle(0, 0, newW, newH), new Rectangle(0, 0, srcImage.Width, srcImage.Height), GraphicsUnit.Pixel);
g.Dispose();
return b;
}
catch (Exception)
{
return null;
}
}

2.按照指定像素大小截圖
代碼如下:
View Code
/// <summary>
/// 按照指定大小縮放圖片
/// </summary>
/// <param name="srcImage"></param>
/// <param name="iWidth"></param>
/// <param name="iHeight"></param>
/// <returns></returns>
public static Bitmap SizeImage(Image srcImage, int iWidth, int iHeight)
{
try
{
// 要保存到的圖片
Bitmap b = new Bitmap(iWidth, iHeight);
Graphics g = Graphics.FromImage(b);
// 插值算法的質量
g.InterpolationMode = InterpolationMode.HighQualityBicubic;
g.DrawImage(srcImage, new Rectangle(0, 0, iWidth, iHeight), new Rectangle(0, 0, srcImage.Width, srcImage.Height), GraphicsUnit.Pixel);
g.Dispose();
return b;
}
catch (Exception)
{
return null;
}
}

3.按照指定像素大小截圖(但為了保證圖片的原始比例,將對圖片從中心進行截取,達到圖片不被拉伸的效果)
代碼如下:
View Code
/// <summary>
/// 按照指定大小縮放圖片,但是為了保證圖片寬高比自動截取
/// </summary>
/// <param name="srcImage"></param>
/// <param name="iWidth"></param>
/// <param name="iHeight"></param>
/// <returns></returns>
public static Bitmap SizeImageWithOldPercent(Image srcImage, int iWidth, int iHeight)
{
try
{
// 要截取圖片的寬度(臨時圖片)
int newW = srcImage.Width;
// 要截取圖片的高度(臨時圖片)
int newH = srcImage.Height;
// 截取開始橫坐標(臨時圖片)
int newX = 0;
// 截取開始縱坐標(臨時圖片)
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 道孚县| 麻阳| 保亭| 江华| 松阳县| 乡宁县| 文成县| 锡林浩特市| 陆河县| 通河县| 宝应县| 江川县| 宜城市| 大邑县| 霍林郭勒市| 侯马市| 顺平县| 鄂托克旗| 会昌县| 荥经县| 平定县| 奉节县| 五大连池市| 贵阳市| 登封市| 上饶县| 额尔古纳市| 阿合奇县| 中方县| 鄂托克前旗| 越西县| 石家庄市| 富源县| 深泽县| 安阳市| 昌乐县| 昌江| 连江县| 甘泉县| 梅河口市| 富平县|