ASP.NET生成高質(zhì)量縮略圖通用函數(shù)(c#代碼)_.Net教程

      編輯Tag賺U幣
      教程Tag:暫無Tag,歡迎添加,賺取U幣!

      推薦:asp.net里面的身份驗(yàn)證和授權(quán)
      今天閑著無聊.想起來了ASP.NET身份驗(yàn)證.感覺良好.貼出下列代碼: login.aspx HTML代碼 <%@ Page language="c#" Codebehind="02Login.aspx.cs" AutoEventWire

      在網(wǎng)站開發(fā)時,生成縮略圖是一個非常常見和實(shí)用的功能.以前在asp里只能借助com組件實(shí)現(xiàn),現(xiàn)在在.net里可以利用框架的強(qiáng)大的類庫輕松實(shí)現(xiàn).下面帖出完整的代碼(帶詳細(xì)注釋),參考了網(wǎng)上的一些文章及.net sdk相關(guān)內(nèi)容.QQROOM網(wǎng)絡(luò)家園的圖片上傳用到了所有的4種生成方式.
      /// <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;
      }

      分享:ASP.NET的高級調(diào)試技巧
        對于一個項(xiàng)目來說,你不可能通過設(shè)定起始頁按F5鍵進(jìn)行調(diào)試,原因是:各個網(wǎng)頁間的關(guān)聯(lián)性太強(qiáng),要驗(yàn)證的的東西也很多。在調(diào)試時很難進(jìn)行(實(shí)際上在我做的項(xiàng)目中根本不能進(jìn)行)。   那么

      共2頁上一頁12下一頁
      來源:模板無憂//所屬分類:.Net教程/更新時間:2008-08-22
      相關(guān).Net教程