C#缩略图多路径多格式保存的实例
2023-06-13 09:15:03 时间
usingSystem;
usingSystem.Drawing;
namespacePubLib
{
///<summary>
///PicShow的摘要说明。
///</summary>
publicclassPicShow
{
publicPicShow()
{
//
//TODO:在此处添加构造函数逻辑
//
}
//查找图片文件是否存在
publicstaticstringViewPIC(stringPicPath,stringPicName)
{
stringBigPic=Checks.HM_PHYSICSROOT+"MoviePIC/"+Checks.HM_PICROOTPATH+"/"+PicName;
stringSmlPic=Checks.HM_PHYSICSROOT+"MoviePIC/"+PicPath+"/"+PicName;
if(null==PicName||false==System.IO.File.Exists(BigPic))//大图名称为空或文件不存在
PicName="nopic.jpg";
stringOutPic="MoviePIC/"+PicPath+"/"+PicName;
if(!System.IO.File.Exists(SmlPic))//查找小图不存在
{
CreatePIC(PicPath,PicName);
returnOutPic;
}
returnOutPic;
}
//创建缩略图
publicstaticvoidCreatePIC(stringPicPath,stringPicName)
{
intiWidth,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]);
stringBigPic=Checks.HM_PHYSICSROOT+"MoviePIC/"+Checks.HM_PICROOTPATH+"/"+PicName;
stringSmlPic=Checks.HM_PHYSICSROOT+"MoviePIC/"+PicPath+"/"+PicName;
ImageBigImage=Image.FromFile(BigPic);
ImageSmlImage=BigImage.GetThumbnailImage(iWidth,iHeight,null,newSystem.IntPtr());
SmlImage.Save(SmlPic,System.Drawing.Imaging.ImageFormat.Jpeg);
BigImage.Dispose();
SmlImage.Dispose();
}
}
}
}
Checks.HM_PHYSICSROOT是一个静态变量是系统的根路径,你问怎么获得?其实很简单你可以直接写个路径给它。虽然不灵活但也还算简单。我是这么搞的
publicstaticstringHM_PHYSICSROOT =AppDomain.CurrentDomain.BaseDirectory;
(其实也简单顾弄玄虚:~)
多路径,也就是说的有点吓人而已,你在生成缩略图的时候指定一个路径就可以了。就是这个参数PicPath是要你手工指定的,多格式说白了就是大小可以调整。我的方法是路径就是大小,比如200*300的图片路径就叫200X300嘿嘿,当然要指定一个图片原始路径,不然从那里得到图片来生成缩略啊。这个Checks.HM_PICROOTPATH就只能手写了,没什么办法。反正一次写了以后也不改动了。
相关文章
- c#窗体添加背景音乐_eclipse怎么添加背景音乐
- C# WinForm实现自动更新程序之客户端的示例代码
- 【愚公系列】2023年01月 .NET CORE工具案例-使用pythonnet实现C#和Python的融合调用
- 【愚公系列】2023年01月 .NET/C#知识点-文件上传与下载
- c#获得局域网主机列表实例
- C#的XML两种代码注释实例说明
- C#调用Delphidll实例代码
- C#Struct的内存布局问题解答
- C#正则表达式分解和转换IP地址实例(C#正则表达式大全c#正则表达式语法)
- C#定时器定时更新的简单实例
- c#获取季度时间实例代码(季度的第一天)
- c#编写webservice服务引用实例分享
- c#文件下载示例的4种方法分享
- c#创建windows服务入门教程实例
- C#实现随鼠标移动窗体实例
- C#获取网页HTML源码实例
- C#数据库操作类AccessHelper实例
- C#线程同步的三类情景分析
- C#中按字符串截取长字符串实例
- C#运行CGI程序实例
- 基于C#实现的木马程序实例详解
- C#中的Timer和DispatcherTimer使用实例
- C#生成随机数实例
- C#EntityFramework中的IQueryable和IQueryProvider详解
- C#采用OpenXml给word里面插入图片