C#缩略图多路径多格式保存的实例

 更新时间:2013年07月23日 10:22:35   作者:  
这篇文章介绍了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就只能手写了,没什么办法。反正一次写了以后也不改动了。

相关文章

  • C#使用Dns类实现查询主机名对应IP地址

    C#使用Dns类实现查询主机名对应IP地址

    C#中的Dns类能够与默认的DNS服务器进行通信,以检索IP地址,这篇文章主要介绍了C#如何使用Dns类解析出主机对应的IP地址信息,需要的可以参考下
    2024-02-02
  • winform创建不规则窗体的方法

    winform创建不规则窗体的方法

    这篇文章主要介绍了winform创建不规则窗体的方法,涉及C#窗体创建的相关参数设置技巧,非常具有实用价值,需要的朋友可以参考下
    2015-09-09
  • C# Resources资源详解

    C# Resources资源详解

    这篇文章主要为大家详细介绍了C# Resources资源,包括Resource Basics、Strongly Typed Resources等,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2017-01-01
  • c#索引器详解示例

    c#索引器详解示例

    索引器是一种特殊的类成员,它能够让对象以类似数组的方式来存取,使程序看起来更为直观,更容易编写。
    2014-04-04
  • C#中using的三种用法

    C#中using的三种用法

    C#中using的三种用法...
    2007-04-04
  • C#值类型、引用类型中的Equals和==的区别浅析

    C#值类型、引用类型中的Equals和==的区别浅析

    这篇文章主要介绍了C#值类型、引用类型中的Equals和==的区别浅析,本文分别对C#值类型和引用类型中的Equals和==做了讲解和给出了实例,需要的朋友可以参考下
    2015-01-01
  • 详解从零开始---用C#制作扫雷游戏

    详解从零开始---用C#制作扫雷游戏

    这篇文章主要介绍了详解从零开始---用C#制作扫雷游戏,非常具有实用价值,需要的朋友可以参考下
    2017-06-06
  • C#实现窗体抖动的两种方法

    C#实现窗体抖动的两种方法

    这篇文章主要为大家详细介绍了C#实现窗体抖动的两种方法,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2020-11-11
  • 如何用C#验证IP是否为局域网地址

    如何用C#验证IP是否为局域网地址

    这篇文章主要介绍了如何用C#验证IP是否为局域网地址,文中讲解非常细致,代码帮助大家更好的参考和学习,感兴趣的朋友可以了解下
    2020-06-06
  • WinForm项目开发中WebBrowser用法实例汇总

    WinForm项目开发中WebBrowser用法实例汇总

    这篇文章主要介绍了WinForm项目开发中WebBrowser用法,需要的朋友可以参考下
    2014-08-08

最新评论