- 浏览: 41063 次
文章分类
最新评论
记录一个保存缩略图通用的函数。
+ View Code? /// <summary> /// 生成缩略图 /// </summary> /// <param name="originalImagePath">源图路径(物理路径)</param> /// <param name="thumbnailPath">缩略图路径(物理路径)</param> /// <param name="width">缩略图宽度</param> /// <param name="height">缩略图高度</param> /// <param name="mode">生成缩略图的方式</param> public static void MakeThumbnail(string originalImagePath, string thumbnailPath, int width, int height, string mode) { Image originalImage = Image.FromFile(originalImagePath); int towidth = width; int toheight = height; int x = 0; int y = 0; int ow = originalImage.Width; int oh = originalImage.Height; switch (mode) { case "HW"://指定高宽缩放(可能变形) break; case "W"://指定宽,高按比例 toheight = originalImage.Height * width/originalImage.Width; break; case "H"://指定高,宽按比例 towidth = originalImage.Width * height/originalImage.Height; break; case "Cut"://指定高宽裁减(不变形) if((double)originalImage.Width/(double)originalImage.Height > (double)towidth/(double)toheight) { oh = originalImage.Height; ow = originalImage.Height*towidth/toheight; y = 0; x = (originalImage.Width - ow)/2; } else { ow = originalImage.Width; oh = originalImage.Width*height/towidth; x = 0; y = (originalImage.Height - oh)/2; } break; default : break; } //新建一个bmp图片 Image bitmap = new System.Drawing.Bitmap(towidth,toheight); //新建一个画板 Graphics g = System.Drawing.Graphics.FromImage(bitmap); //设置高质量插值法 g.InterpolationMode = System.Drawing.Drawing2D.InterpolationMode.High; //设置高质量,低速度呈现平滑程度 g.SmoothingMode = System.Drawing.Drawing2D.SmoothingMode.HighQuality; //清空画布并以透明背景色填充 g.Clear(Color.Transparent); //在指定位置并且按指定大小绘制原图片的指定部分 g.DrawImage(originalImage, new Rectangle(0, 0, towidth, toheight), new Rectangle(x, y, ow,oh), GraphicsUnit.Pixel); try { //以jpg格式保存缩略图 bitmap.Save(thumbnailPath, System.Drawing.Imaging.ImageFormat.Jpeg); } catch(System.Exception e) { throw e; } finally { originalImage.Dispose(); bitmap.Dispose(); g.Dispose(); } }
发表评论
-
C# GDI设计的高级时钟,很有用收藏了。
2015-03-09 12:44 703效果图: 接着上次的简单时钟,这次要高级多了,算法更正 ... -
怎样提高WebService的性能
2015-02-03 13:51 1807服务器端WebService程序: using Syste ... -
ASP.net网站性能提高办法 无意中从网上浏览到了一篇提高网站性能的帖子转来学习下。
2015-01-16 13:42 512ASP.net网站性能提高办法 无意中从网上浏览到了一篇提高网 ... -
让ADO.NET Entity Framework支持Oracle数据库 好东西收藏了
2015-01-16 11:35 509项目需要基于.NET平台,个人的习惯是能用微软自带的就不用第三 ... -
使用SqlBulkCopy导入大数据要注意
2015-01-13 14:17 571第一次用挺好,第二次就出问题了:我的表里边已经有数据,而且加了 ... -
不要让你的错误处理把错误给吃了,千万注意不然费时费力
2015-01-13 10:48 586开发中老鸟总是说你的程序怎么不够友好,都不加错误处理,给用户报 ... -
用微软提供的批量把数据导入到数据库方法SqlBulkCopy真是好用好快
2015-01-13 09:59 2596平时老是碰到把一批数据插入到数据库。通常的办法是循环一条条插进 ... -
SQL Server类型与C#类型对应关系 好东西收藏了
2015-01-13 09:14 1567SQL Server类型 C#类型 bit bool tiny ... -
asp.net 中URL 编码窗体数据无效提示错误处理记录
2015-01-12 15:50 770一个系统,其他用户都没有问题,就是一个用户说报错 后来查 ... -
CSV文件转换类
2015-01-12 13:01 822/// <summary> /// ... -
最全的日期年农历假日节气星座等计算类封装
2015-01-12 09:27 555/// <summary> /// 农历属 ... -
用调用浏览器打印页面1
2015-01-12 08:08 722<!--media=print 这个属性可以在打印时有效 ... -
C#检验数据有效性验证类
2015-01-09 12:46 826using System; using System.Text ... -
Asp.net事假的执行顺序,非常重要这个算是高级编程部分
2015-01-09 09:47 743ASP.NET 母版页和内容页中的事件 母版页和内容页都可以 ... -
用NPOI把数据库内容导入到Excel中实例(NPOI版本2.0)
2015-01-08 14:30 610注意 [url=http://dl.iteye.com/top ... -
开发中货币样式看似简单,没弄过的往往花费比较长时间,本人处理了,贴出来大家分享,也方便自己以后查用
2015-01-08 11:00 494开发中货币样式看似简单,没弄过的往往花费比较长时间,本人处理了 ... -
写流文件的方式把页面中的数据导到Excel的终极代码
2015-01-06 11:12 1127在开发一个小项目的时候,当时说功能简单,但是要实现数据导出功 ...
相关推荐
在ASP.NET中,创建缩略图是一项常见的任务,特别是在构建包含图像处理功能的Web应用程序时。C#作为ASP.NET的主要编程语言,提供了丰富的库和API来实现这一功能。本资源包"Example042-创建缩略图"可能包含一个示例...
4. **创建缩略图**:根据计算出的比例,创建一个新的Bitmap对象,作为缩略图的画布。然后,使用Graphics类的DrawImage方法将原始图片绘制到这个新的Bitmap上。 ```csharp Bitmap thumbnail = new Bitmap...
在 ASP.NET 开发中,生成缩略图是一项常见的任务,特别是在构建包含图像上传和展示功能的网站时。在 ASP.NET 中,你可以利用 .NET Framework 的内置类库来实现这一功能,而无需依赖任何第三方控件。以下是一个使用 ...
ASP.NET 3.0 缩略图水印组件是一个用于在ASP.NET开发环境中处理图像的工具,它提供了创建缩略图以及在图像上添加水印的功能。这个组件可以帮助开发者高效地管理和展示网站上的图片资源,同时增强版权保护,通过...
总结来说,"asp.net水印缩略图制作"涉及到ASP.NET中的图像处理技术,包括利用System.Drawing命名空间中的类生成和操作图像,创建缩略图,以及添加水印。这些技术对于构建具有图像展示和保护功能的Web应用至关重要。...
系统.Drawing提供了对图像的基本操作,包括创建缩略图。首先,我们需要读取原始图片,然后通过调整宽度和高度生成缩略图,保持原图宽高比不变,以避免变形。 ```csharp using System.Drawing; // 加载原始图片 ...
### ASP.NET 自动生成缩略图知识点解析 #### 一、概述 在Web开发中,图片处理是一项常见的需求。尤其是在用户上传图片后,为了更好地展示或节省带宽资源,往往需要将图片转换为较小尺寸的版本(即缩略图)。ASP...
通常,我们使用图像处理库来读取原始图片,然后调整尺寸以创建缩略图。在.NET中,System.Drawing命名空间提供了丰富的类来处理图像,如Bitmap和Graphics类。例如,我们可以使用Bitmap类的Clone方法来创建原始图片的...
- **创建缩略图**:利用`Bitmap`类创建一个新的位图,并使用`Graphics`对象进行绘制。在绘制过程中,设置了高质量的插值和平滑模式,以提高图片质量。 - **创建索引图**:类似地,创建一个较小尺寸的位图作为索引图...
在这个特定的案例中,我们讨论的是一个2.53版本的ASP.NET组件,专门用于生成缩略图并添加水印。 缩略图生成是一个常见的需求,特别是在处理大量图像的网站或应用中,如图片库、电商网站等。缩略图可以有效地减少...
- 创建缩略图:通过创建新的`Bitmap`对象,设置其宽度和高度为缩略图尺寸,然后使用`Graphics`对象的`DrawImage`方法进行绘制。在这个过程中,可以指定缩放算法。 - 保存缩略图:使用`Save`方法将缩略图保存到文件...
3. **创建缩略图**: - 创建一个新的 `Bitmap` 实例作为缩略图的基础。 - 使用 `Graphics` 类进行图像处理,通过设置 `InterpolationMode` 和 `SmoothingMode` 来保证图像质量。 - 调用 `Graphics.DrawImage` ...
在ASP.NET中,生成缩略图是一项常见的任务,特别是在网站开发中,为了节省服务器资源和提高页面加载速度,经常需要将大尺寸的图片转化为小尺寸的缩略图。本篇将详细讲解一个C#编写的ASP.NET通用缩略图生成函数,该...
在ASP.NET中,创建缩略图并添加水印是一项常见的任务,主要应用于网站中的图片展示,比如产品图库、新闻文章配图等。这个“asp.net 缩略图水印模块”应该是一个能够帮助开发者快速实现这一功能的代码示例或组件。...
在ASP.NET 2.0开发中,生成缩略图和添加水印是常见的图像处理需求。这涉及到图像处理技术,包括尺寸调整、图像质量保持、以及如何在图像上添加文字或图片作为装饰或版权保护。以下是对这些知识点的详细解释: 1. **...
在ASP.NET中生成缩略图是一项常见的需求,特别是在网站开发中,用于展示图片预览或优化加载速度。本文将详细介绍如何使用C#编写一个通用且简单的函数来实现这个功能。 首先,我们需要一个函数,该函数接受四个参数...
创建缩略图:** 创建一个新的`Bitmap`对象,用以保存缩略图,并根据缩放比例设置其大小。然后使用`Graphics`类来绘制缩放后的图像: ```csharp Bitmap thumbnail = new Bitmap(thumbnailWidth, thumbnailHeight); ...