知识大全 用C#轻松地在DOTNET中实现缩略图
Posted 知
篇首语:书籍是朋友,虽然没有热情,但是非常忠实。本文由小常识网(cha138.com)小编为大家整理,主要介绍了知识大全 用C#轻松地在DOTNET中实现缩略图相关的知识,希望对你有一定的参考价值。
用C#轻松地在DOTNET中实现缩略图 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!
以前 在页面上实现缩略图必须借助第三方组件 现在 有了 NET 就可以很轻松地实现缩略图 下面就是实现缩略图的例子 关键字:C# ASP NET 缩略图 实例下载: ToThumbnailImage aspx <%@ Page language= c# Codebehind= ToThumbnailImage aspx cs Src= ToThumbnailImage aspx cs AutoEventWireup= false Inherits= Exam_C ToThumbnailImage %> <> <head> <title>Lion互动网络 =>生成缩略图</title> </head> <body> <form id= Form method= post runat= server > </form> </body> </> ToThumbnailImage aspx cs using System; using System Collections; using System ComponentModel; using System Data; using System Drawing; using System Web; using System Web SessionState; using System Web UI; using System Web UI WebControls; using System Web UI HtmlControls; using System Drawing Imaging; namespace Exam_C /// <summary> /// ToThumbnailImage 的摘要说明 /// </summary> public class ToThumbnailImage : System Web UI Page /* Create By lion : Copyright (C) LionSky Net All rights reserved Web: ; Email: */ static Hashtable imes=new Hashtable(); internal readonly string AllowExt = jpe| jpeg| jpg| png| tif| tiff| bmp ; #region Web 窗体设计器生成的代码 override protected void OnInit(EventArgs e) #region imes[ jpe ]= image/jpeg ; imes[ jpeg ]= image/jpeg ; imes[ jpg ]= image/jpeg ; imes[ png ]= image/png ; imes[ tif ]= image/tiff ; imes[ tiff ]= image/tiff ; imes[ bmp ]= image/bmp ; #endregion //调用生成缩略图方法 ToThumbnailImages( lionsky jpg b gif ); #endregion #region Helper /// <summary> /// 获取图像编码解码器的所有相关信息 /// </summary> /// <param name= mimeType >包含编码解码器的多用途网际邮件扩充协议 (MIME) 类型的字符串</param> /// <returns>返回图像编码解码器的所有相关信息</returns> static ImageCodecInfo GetCodecInfo(string mimeType) ImageCodecInfo[] CodecInfo = ImageCodecInfo GetImageEncoders(); foreach(ImageCodecInfo ici in CodecInfo) if(ici MimeType == mimeType)return ici; return null; /// <summary> /// 检测扩展名的有效性 /// </summary> /// <param name= sExt >文件名扩展名</param> /// <returns>如果扩展名有效 返回true 否则返回false </returns> bool CheckValidExt(string sExt) bool flag=false; string[] aExt = AllowExt Split( | ); foreach(string filetype in aExt) if(filetype ToLower()==sExt) flag = true; break; return flag; /// <summary> /// 保存图片 /// </summary> /// <param name= image >Image 对象</param> /// <param name= savePath >保存路径</param> /// <param name= ici >指定格式的编解码参数</param> void SaveImage(System Drawing Image image string savePath ImageCodecInfo ici) //设置 原图片 对象的 EncoderParameters 对象 EncoderParameters parameters = new EncoderParameters( ); parameters Param[ ] = new EncoderParameter(Encoder Quality ((long) )); image Save(savePath ici parameters); parameters Dispose(); #endregion #region Methods /// <summary> /// 生成缩略图 /// </summary> /// <param name= sourceImagePath >原图片路径(相对路径)</param> /// <param name= thumbnailImagePath >生成的缩略图路径 如果为空则保存为原图片路径(相对路径)</param> /// <param name= thumbnailImageWidth >缩略图的宽度(高度与按源图片比例自动生成)</param> public void ToThumbnailImages(string sourceImagePath string thumbnailImagePath int thumbnailImageWidth) string SourceImagePath = sourceImagePath; string ThumbnailImagePath = thumbnailImagePath; int ThumbnailImageWidth = thumbnailImageWidth; string sExt = SourceImagePath Substring(SourceImagePath LastIndexOf( )) ToLower(); if(SourceImagePath ToString()==System String Empty) throw new NullReferenceException( SourceImagePath is null! ); if(!CheckValidExt(sExt)) throw new ArgumentException( 原图片文件格式不正确 支持的格式有[ + AllowExt + ] SourceImagePath ); //从 原图片 创建 Image 对象 System Drawing Image image = System Drawing Image FromFile(HttpContext Current Server MapPath(SourceImagePath)); int num = ((ThumbnailImageWidth / ) * ); int width = image Width; int height = image Height; //计算图片的比例 if ((((double) width) / ((double) height)) >= f) num = ((height * ThumbnailImageWidth) / width); else ThumbnailImageWidth = ((width * num) / height); if ((ThumbnailImageWidth < ) || (num < )) return; //用指定的大小和格式初始化 Bitmap 类的新实例 Bitmap bitmap = new Bitmap(ThumbnailImageWidth num PixelFormat Format bppArgb); //从指定的 Image 对象创建新 Graphics 对象 Graphics graphics = Graphics FromImage(bitmap); //清除整个绘图面并以透明背景色填充 graphics Clear(Color Transparent); //在指定位置并且按指定大小绘制 原图片 对象 graphics DrawImage(image new Rectangle( ThumbnailImageWidth num)); image Dispose(); try //将此 原图片 以指定格式并用指定的编解码参数保存到指定文件 string savepath = (ThumbnailImagePath==null?SourceImagePath:ThumbnailImagePath); SaveImage(bitmap HttpContext Current Server MapPath(savepath) GetCodecInfo((string)imes[sExt])); catch(System Exception e) throw e; finally bitmap Dispose(); graphics Dispose(); #endregion cha138/Article/program/net/201311/12672相关参考
这是我前两天写的生成图片的缩略图和给图片打上logo的java代码没有怎么整理就放上来了希望能够为大家在工作中帮点忙同时写的有什么不对的地方希望大家指点指点 importjavaawtGraph
在ASP.NET中上传图片并生成缩略图 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!以下是引用片段
JAVA生成JPG缩略图 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! 在任何一个综合性网站我们
生成缩略图及给原始图加水印代码如下cha138/Article/program/net/201311/11730
importjavaawtContainer; importjavaawtDimension; importjavaawtGraphicsD; importjavaawtImage; im
知识大全 使用FileUpload控件上传图片并自动生成缩略图
使用FileUpload控件上传图片并自动生成缩略图 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!
知识大全 asp.net缩略图和水印制作:Image Generation
asp.net缩略图和水印制作:ImageGeneration 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来
知识大全 用 Spring MVC 轻松进行应用程序开发(图)
用SpringMVC轻松进行应用程序开发(图) 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! 在
手机与电脑连接后手机照片全成无缩略图怎么回事是不是手机连接电脑显示成不可视图标?这个不影响的,你复制到电脑上双击照样可以打开。可能你在手机上换个存储照片的文件夹可能就正常了。希望可以帮到你。红米手机翻
使用方法 $img=newiamge;$img>resize(dstimgjpgsrcimgjpg);说明这个是按照比例缩放dstimgjpg是目标文件srcimgjpg是源文件后面的是目