ASP.NET 缩略图

最近在学ASP.NET,看到微博上的很多图片都是以缩略图的形式呈现的,点击缩略图就能看到原始大图,我想问一下,这种缩略图是怎样生成的。一个微博页面上要显示那么多张缩略图,... 最近在学ASP.NET,看到微博上的很多图片都是以缩略图的形式呈现的,点击缩略图就能看到原始大图,我想问一下,这种缩略图是怎样生成的。一个微博页面上要显示那么多张缩略图,是怎么做到的?应该不是将缩略图画到一个页面上,然后将其他页面上的Image控件的ImageURL设为之前画缩略图的页面地址吧!
刚学,请解释的详细一点。
展开
 我来答
石哥在拌饭
2012-02-24 · TA获得超过530个赞
知道小有建树答主
回答量:573
采纳率:100%
帮助的人:565万
展开全部
1.可以写一个生成缩略图的一般处理程序 ashx
在页面上调用写好的缩略图程序ashx,比如 <img src="getImage.ashx?name=xxx"/> ,这个就是缩略图.
点击图片的时候JQuery加载查看大图。

2.也可以在用户第一次上传图片的时候自动生成一份缩略图,页面初始时加载缩略图,点击加载大图效果。

缩略图程序: ashx
context.Response.ContentType = "image/jpeg";
//接收url上传来的照片名字
string name = context.Request.QueryString["name"];
//读取图片路径
string path = context.Request.MapPath("images/" + name);
//读取大图
Image image = Image.FromFile(path);
//创建缩略图
Bitmap bitmap = new Bitmap(150, 100);//长150,高100
//创建笔刷画图
Graphics g = Graphics.FromImage(bitmap);
g.DrawImage(image, 0, 0, smallWidth, smallHeight);
//输出图片流
bitmap.Save(context.Response.OutputStream, System.Drawing.Imaging.ImageFormat.Jpeg);
//释放各资源
g.Dispose();
bitmap.Dispose();
image.Dispose();
百度网友dbecaad78
2012-02-22 · TA获得超过2402个赞
知道大有可为答主
回答量:2592
采纳率:0%
帮助的人:1455万
展开全部
两种解释方式。。
第一种 图片上传后,程序读取这个图片 ,处理为缩略图(网上有相关代码,剪裁,取样),用户列表显示的时候返回缩略图,详细查看的时候 再进行大图查看。
第二种 ,图片上传 直接保存原图。在读取的时候 页面显示一个缩略图(仅仅效果,图片还是真实全部加载完),之后查看原图的时候 就不需要读取了,,直接大尺寸显示即可。

微博上 采取第一种
追问
显示缩略图时是在Image控件中显示的吗?微博上每点一个缩略图,就会弹出其相应的原图,这是触发了Image控件的单击事件吗?但Image控件好像没有单击事件。这要怎么实现?
追答
基本都单击事件,,可以使用image ,甚至div当背景都可以。。如果WEB版 基本js还是需要一点。

如果是应用程序 那各种事件都有的吧
本回答被提问者和网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
弄江湖
2012-02-22
知道答主
回答量:79
采纳率:0%
帮助的人:25.2万
展开全部
写个转换图片大小的函数,不会写可以网上找个,可以生成缩略图!
显示大图可以用Jquery实现。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式