程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> 更多編程語言 >> 更多關於編程 >> C#縮略圖多路徑多格式保存的實例

C#縮略圖多路徑多格式保存的實例

編輯:更多關於編程
    這篇文章介紹了C#縮略圖多路徑多格式保存的實例,有需要的朋友可以參考一下   復制代碼 代碼如下:
    using System;
    using System.Drawing;
    namespace PubLib
    {
     /// <summary>
     /// PicShow 的摘要說明。
     /// </summary>
     public class PicShow
     {
      public PicShow()
      {
       //
       // TODO: 在此處添加構造函數邏輯
       //
      }
      //查找圖片文件是否存在
      public static string ViewPIC(string PicPath, string PicName)
      {
       string BigPic = Checks.HM_PHYSICSROOT + "MoviePIC/"+Checks.HM_PICROOTPATH+"/"+PicName;
       string SmlPic = Checks.HM_PHYSICSROOT + "MoviePIC/"+PicPath+"/"+PicName;
       if (null==PicName || false==System.IO.File.Exists(BigPic)) //大圖名稱為空或文件不存在
        PicName = "nopic.jpg";
       string OutPic = "MoviePIC/"+PicPath+"/"+PicName;
       if (!System.IO.File.Exists(SmlPic)) //查找小圖不存在
       {
        CreatePIC(PicPath, PicName);
        return OutPic;
       }
       return OutPic;
      }
      //創建縮略圖
      public static void CreatePIC(string PicPath, string PicName)
      {
       int iWidth,iHeight;
       if (null!=PicPath && PicPath.IndexOf("X")>1)
       {
        char[] spliter = {X};
        string[] aPicPath = PicPath.Split(spliter,2);
        iWidth  = Int32.Parse(aPicPath[0]);
        iHeight = Int32.Parse(aPicPath[1]);
        string BigPic = Checks.HM_PHYSICSROOT + "MoviePIC/"+Checks.HM_PICROOTPATH+"/"+PicName;
        string SmlPic = Checks.HM_PHYSICSROOT + "MoviePIC/"+PicPath+"/"+PicName;
        Image BigImage = Image.FromFile(BigPic);
        Image SmlImage = BigImage.GetThumbnailImage(iWidth,iHeight,null,new System.IntPtr());
        SmlImage.Save(SmlPic,System.Drawing.Imaging.ImageFormat.Jpeg);
        BigImage.Dispose();
        SmlImage.Dispose();
       }
      }
     }
    }


    Checks.HM_PHYSICSROOT 是一個靜態變量是系統的根路徑,你問怎麼獲得?其實很簡單你可以直接寫個路徑給它。雖然不靈活但也還算簡單。我是這麼搞的
    public static string HM_PHYSICSROOT   = AppDomain.CurrentDomain.BaseDirectory;
    (其實也簡單顧弄玄虛:~)
    多 路徑,也就是說的有點嚇人而已,你在生成縮略圖的時候指定一個路徑就可以了。就是這個參數PicPath是要你手工指定的,多格式說白了就是大小可以調 整。我的方法是路徑就是大小,比如200*300的圖片路徑就叫200X300嘿嘿,當然要指定一個圖片原始路徑,不然從那裡得到圖片來生成縮略啊。這個 Checks.HM_PICROOTPATH就只能手寫了,沒什麼辦法。反正一次寫了以後也不改動了。

    1. 上一頁:
    2. 下一頁:
    Copyright © 程式師世界 All Rights Reserved