当前位置: 首页 > 图文教程 > 网络编程 > ASP.NET > 缩略图多路径多格式保存

ASP.NET
DVNEWS 3.2 1013版免虚拟目录的安装方法,只要三个步骤
DataRow的序列化问题
VB.net基础:使用UDP发送和接收消息
采用HttpModules来重写URLs(实践篇)
要用到事务了
DataGrid中单元格的比较
动态引用WebService,建立WebService虚拟机
[初学VB.NET]数据绑定
使用ASP调用WebService时不能以Name为数据库中的字段
在VB.NET里操作文本文件
web下打印的办法
怎样把SQL_SERVER数据库里的(类型是image)图片显示在aspx页面里的image控件里
C#中字符串的加密
中小企业信息应用的利器:DAP-Dynamic Applications Platform
数据库系统概论学习笔记
体会到译者的艰辛,也发现了他们犯的错误
IISManager V1.1 是一个在线管理IIS,维护站点组件,安全稳定,最重要的是完全免费。
VS FlexGridPro 8.0如何在window98运行---有没有升级版本,急请高手指点
给立方体添加纹理
Wrox的C#高级编程第三版第一部分第一章(1~9页)

ASP.NET 中的 缩略图多路径多格式保存


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-11-03   浏览: 250 ::
收藏到网摘: n/a


先把代码版出来
using System;using System.Drawing;
namespace PubLib{ /// /// PicShow 的摘要说明。 /// 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就只能手写了,没什么办法。反正一次写了以后也不改动了。时间紧迫,没时间多讲,看了不懂就留言,必复!必复!呵呵,就这么着了,886