当前位置:  编程技术>.net/c#/asp.net

c#生成高清缩略图的二个示例分享

    来源: 互联网  发布时间:2014-10-29

    本文导语:  代码如下:///  /// 为图片生成缩略图    ///  /// 原图片的路径 /// 缩略图宽  /// 缩略图高  /// public System.Drawing.Image GetThumbnail(System.Drawing.Image image, int width, intheight) { Bitmap bmp = newBitmap(width, height); //从Bitmap创建一个System.Drawing...

代码如下:

///
 /// 为图片生成缩略图  
 ///
 /// 原图片的路径
/// 缩略图宽
 /// 缩略图高
 ///
public System.Drawing.Image GetThumbnail(System.Drawing.Image image, int width, intheight)
{
Bitmap bmp = newBitmap(width, height);
//从Bitmap创建一个System.Drawing.Graphics
System.Drawing.Graphics gr = System.Drawing.Graphics.FromImage(bmp);
//设置 
gr.SmoothingMode = System.Drawing.Drawing2D.SmoothingMode.HighQuality;
//下面这个也设成高质量
gr.CompositingQuality = System.Drawing.Drawing2D.CompositingQuality.HighQuality;
//下面这个设成High
gr.InterpolationMode = System.Drawing.Drawing2D.InterpolationMode.HighQualityBicubic;
//把原始图像绘制成上面所设置宽高的缩小图
System.Drawing.Rectangle rectDestination = newSystem.Drawing.Rectangle(0, 0, width, height);
gr.DrawImage(image, rectDestination, 0, 0, image.Width, image.Height, GraphicsUnit.Pixel);
returnbmp;
}
 

调用方法

代码如下:

HttpPostedFile file = photoFile.PostedFile;
if(!file.ContentType.Contains("image"))
{
return"照片格式不合法";
}
stringext = Path.GetExtension(file.FileName).ToLower();
if (ext != ".jpg" && ext != ".gif" && ext != ".png"&& ext != ".jpeg")
{
return"请您上传jpg、gif、png图片";
}
if(file.ContentLength > 5 * 1024 * 1024)
{
return"请您上传512字节内的图片";
}
stringnewName = Guid.NewGuid().ToString();
stringtempPath = "upload/";
stringimg = tempPath + newName + ext;
stringfilePath = Server.MapPath(img);
if(!Directory.Exists(tempPath))
{
Directory.CreateDirectory(tempPath);
}
using(System.Drawing.Image originalImage = System.Drawing.Image.FromStream(file.InputStream))
{
GetThumbnail(originalImage, 504, 374).Save(filePath);

示例2

代码如下:

public void  MakeThumbnail(string originalImagePath, string thumbnailPath, int width, int height)
{
//获取原始图片 
System.Drawing.Image originalImage = System.Drawing.Image.FromFile(originalImagePath);
//缩略图画布宽高 
int towidth = width;
int toheight = height;
//原始图片写入画布坐标和宽高(用来设置裁减溢出部分) 
int x = 0;
int y = 0;
int ow = originalImage.Width;
int oh = originalImage.Height;
//原始图片画布,设置写入缩略图画布坐标和宽高(用来原始图片整体宽高缩放) 
int bg_x = 0;
int bg_y = 0;
int bg_w = towidth;
int bg_h = toheight;
//倍数变量 
double multiple = 0;
//获取宽长的或是高长与缩略图的倍数 
if (originalImage.Width >= originalImage.Height)
multiple = (double)originalImage.Width / (double)width;
else
multiple = (double)originalImage.Height / (double)height;
//上传的图片的宽和高小等于缩略图 
if (ow

    
 
 

您可能感兴趣的文章:

  • c#如何生成Excel(.xls和.xlsx)文件
  • C# Guid.NewGuid生成随机数的例子
  • C#生成随机字符串的实例
  • C#随机生成Unicode类型字符串
  • c#生成随机数示例分享
  • C#实现在两个数字之间生成随机数的方法
  • c# 生成随机时间的小例子
  • 生成不重复随机数列表的c#代码
  • C#生成注册码的小例子
  • C#生成MD5的函数代码
  • C#实现动态生成表格的方法
  • C#生成不重复随机数列表实例
  • C#生成设置范围内的Double类型随机数的方法
  • C#生成单页静态页简单实例
  • C#生成加密的16位随机数的代码
  • 一段C#生成随机验证码的代码
  • 基于C#生成随机数示例
  • c#生成缩略图的实现方法
  • c#生成缩略图不失真的简单示例
  • asp.net(c#) 使用Rex正则来生成字符串数组的代码
  • C#随机生成不重复字符串的两个不错方法
  • 网站缩略图生成工具 Webimage
  • 电影缩略图生成工具 Image Grabber
  • php生成缩略图填充白边(等比缩略图方案)
  • 网页缩略图生成类库 Scrender
  • 请问linux服务端如何生成网页的缩略图?
  • PHP实现生成透明背景的PNG缩略图函数分享
  • python生成指定尺寸缩略图的示例
  • PHP等比例缩放图片生成缩略图函数的例子
  • php按百分比生成缩略图的代码分享
  • java根据url抓取并生成缩略图的示例
  •  
    本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
    本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。












  • 相关文章推荐
  • linux c 生成随机数srand函数和rand函数介绍及代码示例
  • java生成字母数字组合的随机数示例 java生成随机数
  • php动态生成函数示例
  • PHP生成唯一标识符的示例代码
  • php生成短网址示例代码
  • 哪位朋友能提供一个用gcc生成lib的makefile简单示例?非常急!谢谢!!
  • jQuery 随机密码生成示例
  • PHP随机生成随机个数的字母组合示例
  • php生成csv显示完整阿拉伯数字(示例)
  • php网站地图生成类(示例代码)
  • php网站地图生成类示例
  • Java生成随机数的2种示例方法代码
  • 有没有用过 JCE 的朋友,生成x.509证书,有没有免费算法,用哪家的比较好,给出示例代码!
  • PHP生成静态文件简单示例
  • php使用qr生成二维码的示例分享
  • ptyhon实现sitemap生成示例
  • python实现随机密码字典生成器示例
  • php生成短网址示例
  • php实现在线生成条形码示例分享(条形码生成器)
  • c语言生成随机uuid编码示例
  • php生成(导出)csv文件的函数示例
  • linux c下利用srand和rand函数生成随机字符串
  • 用JBuilder能将java程序生成exe可执行文件吗?如何生成?
  • Linux下c基于openssl生成MD5的函数
  • 我想问一下,java生成的.class文件能不能通过某种工具生成.exe文件?
  • linux下利用(cat,strings,head,sed)命令生成随机字符串
  • 高分求jsp中动态生成图片的相关资料、生成svg格式和pdf格式的资料,不够再加分
  • php中session_id()函数详细介绍,会话id生成过程及session id长度
  • 如何使用arm-uclibc-gcc将.c文件编译生成.a,将.c文件编译生成.cgi?
  • ORACLE中DBMS_RANDOM随机数生成包
  • 如何指定用javac编译生成类的存放路径。(最好不要告诉我再生成之后再把文件流重新到出这种)




  • 特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

    ©2012-2021,,E-mail:www_#163.com(请将#改为@)

    浙ICP备11055608号-3