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

首頁 > 編程 > C# > 正文

C#簡單生成縮略圖的方法

2020-01-24 02:07:12
字體:
供稿:網(wǎng)友

本文實例講述了C#簡單生成縮略圖的方法。分享給大家供大家參考。具體實現(xiàn)方法如下:

/// <summary>/// 生成縮略圖/// </summary>/// <param name="originalImagePath">源圖路徑(物理路徑)</param>/// <param name="thumbnailPath">縮略圖路徑(物理路徑)</param>/// <param name="width">縮略圖寬度</param>/// <param name="height">縮略圖高度</param>/// <param name="mode">生成縮略圖的方式</param> public static void MakeThumbnail(string originalImagePath, string thumbnailPath, int width, int height, string mode){ Image originalImage = Image.FromFile(originalImagePath); int towidth = width; int toheight = height; int x = 0; int y = 0; int ow = originalImage.Width; int oh = originalImage.Height;  switch (mode) {   case "HW"://指定高寬縮放(可能變形)      break;  case "W"://指定寬,高按比例      toheight = originalImage.Height * width/originalImage.Width;   break;  case "H"://指定高,寬按比例   towidth = originalImage.Width * height/originalImage.Height;      break;   case "Cut"://指定高寬裁減(不變形)      if((double)originalImage.Width/(double)originalImage.Height > (double)towidth/(double)toheight)   {   oh = originalImage.Height;   ow = originalImage.Height*towidth/toheight;   y = 0;   x = (originalImage.Width - ow)/2;   }   else   {   ow = originalImage.Width;   oh = originalImage.Width*height/towidth;   x = 0;   y = (originalImage.Height - oh)/2;   }   break;     default :   break; }  //新建一個bmp圖片 Image bitmap = new System.Drawing.Bitmap(towidth,toheight); //新建一個畫板 Graphics g = System.Drawing.Graphics.FromImage(bitmap); //設(shè)置高質(zhì)量插值法 g.InterpolationMode = System.Drawing.Drawing2D.InterpolationMode.High; //設(shè)置高質(zhì)量,低速度呈現(xiàn)平滑程度 g.SmoothingMode = System.Drawing.Drawing2D.SmoothingMode.HighQuality; //清空畫布并以透明背景色填充 g.Clear(Color.Transparent);  //在指定位置并且按指定大小繪制原圖片的指定部分 g.DrawImage(originalImage, new Rectangle(0, 0, towidth, toheight),  new Rectangle(x, y, ow,oh),  GraphicsUnit.Pixel); try {    //以jpg格式保存縮略圖  bitmap.Save(thumbnailPath, System.Drawing.Imaging.ImageFormat.Jpeg); } catch(System.Exception e) {  throw e; } finally {  originalImage.Dispose();  bitmap.Dispose();      g.Dispose(); }}

希望本文所述對大家的C#程序設(shè)計有所幫助。

發(fā)表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發(fā)表
主站蜘蛛池模板: 大丰市| 新建县| 晋中市| 文化| 寻乌县| 义乌市| 海兴县| 武定县| 罗源县| 喀喇| 棋牌| 鸡泽县| 宝清县| 土默特左旗| 肇州县| 麻阳| 息烽县| 武宣县| 章丘市| 宝清县| 三台县| 白玉县| 旌德县| 和平区| 来凤县| 安新县| 台中县| 邵武市| 芦山县| 平山县| 文安县| 秦皇岛市| 汾西县| 闽侯县| 宿松县| 怀远县| 静海县| 邹城市| 和林格尔县| 赤峰市| 威海市|