/// <summary>
/// 获取一个图片按等比例缩小后的大小。
/// </summary>
/// <param
name="maxWidth">需要缩小到的宽度</param>
/// <param
name="maxHeight">需要缩小到的高度</param>
/// <param
name="imageOriginalWidth">图片的原始宽度</param>
/// <param
name="imageOriginalHeight">图片的原始高度</param>
///
<returns>返回图片按等比例缩小后的实际大小</returns>
public static Size GetNewSize(int maxWidth, int maxHeight, int
imageOriginalWidth, int imageOriginalHeight)
{
<wbr><wbr><wbr> double w =
0.0;<br><wbr><wbr><wbr> double h =
0.0;<br><wbr><wbr><wbr> double sw =
Convert.ToDouble(imageOriginalWidth);<br><wbr><wbr><wbr> double sh =
Convert.ToDouble(imageOriginalHeight); double mw =
Convert.ToDouble(maxWidth);<br><wbr><wbr><wbr> double mh =
Convert.ToDouble(maxHeight);</wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr>
<wbr><wbr><wbr> if (sw
< mw && sh
< mh)<br><wbr><wbr><wbr> {<br><wbr><wbr><wbr><wbr><wbr><wbr><wbr>
w = sw;<br><wbr><wbr><wbr><wbr><wbr><wbr><wbr>
h = sh;<br><wbr><wbr><wbr> }<br><wbr><wbr><wbr> else if ((sw
/ sh) > (mw / mh))<br><wbr><wbr><wbr> {<br><wbr><wbr><wbr><wbr><wbr><wbr><wbr>
w = maxWidth;<br><wbr><wbr><wbr><wbr><wbr><wbr><wbr>
h = (w * sh) / sw;<br><wbr><wbr><wbr> }<br><wbr><wbr><wbr> else<br><wbr><wbr><wbr> {<br><wbr><wbr><wbr><wbr><wbr><wbr><wbr>
h = maxHeight;<br><wbr><wbr><wbr><wbr><wbr><wbr><wbr>
w = (h * sw) / sh;<br><wbr><wbr><wbr> }</wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr>
<wbr><wbr><wbr> return
new Size(Convert.ToInt32(w), Convert.ToInt32(h));<br>
}</wbr></wbr></wbr>
/// <summary>
/// 对给定的一个图片(Image对象)生成一个指定大小的缩略图。
/// </summary>
/// <param
name="originalImage">原始图片</param>
/// <param
name="thumMaxWidth">缩略图的宽度</param>
/// <param
name="thumMaxHeight">缩略图的高度</param>
///
<returns>返回缩略图的Image对象</returns>
public static System.Drawing.Image
GetThumbNailImage(System.Drawing.Image originalImage, int
thumMaxWidth, int thumMaxHeight)
{
<wbr><wbr><wbr> Size
thumRealSize = Size.Empty;<br><wbr><wbr><wbr>
System.Drawing.Image newImage = originalImage;<br><wbr><wbr><wbr> Graphics
graphics = null;</wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr>
<wbr><wbr><wbr> try<br><wbr><wbr><wbr> {<br><wbr><wbr><wbr><wbr><wbr><wbr><wbr>
thumRealSize = GetNewSize(thumMaxWidth, thumMaxHeight,
originalImage.Width, originalImage.Height);<br><wbr><wbr><wbr><wbr><wbr><wbr><wbr>
newImage = new Bitmap(thumRealSize.Width,
thumRealSize.Height);<br><wbr><wbr><wbr><wbr><wbr><wbr><wbr>
graphics = Graphics.FromImage(newImage);</wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr>
<wbr><wbr><wbr><wbr><wbr><wbr><wbr>
graphics.CompositingQuality = CompositingQuality.HighQuality;<br><wbr><wbr><wbr><wbr><wbr><wbr><wbr>
graphics.InterpolationMode =
InterpolationMode.HighQualityBicubic;<br><wbr><wbr><wbr><wbr><wbr><wbr><wbr>
graphics.SmoothingMode = SmoothingMode.HighQuality;</wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr>
<wbr><wbr><wbr><wbr><wbr><wbr><wbr>
graphics.Clear(Color.Transparent);</wbr></wbr></wbr></wbr></wbr></wbr></wbr>
<wbr><wbr><wbr><wbr><wbr><wbr><wbr>
graphics.DrawImage(originalImage, new Rectangle(0, 0,
thumRealSize.Width, thumRealSize.Height), new Rectangle(0, 0,
originalImage.Width, originalImage.Height),
GraphicsUnit.Pixel);<br><wbr><wbr><wbr> }<br><wbr><wbr><wbr> catch {
}<br><wbr><wbr><wbr>
finally<br><wbr><wbr><wbr> {<br><wbr><wbr><wbr><wbr><wbr><wbr><wbr>
if (graphics != null)<br><wbr><wbr><wbr><wbr><wbr><wbr><wbr>
{<br><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr>
graphics.Dispose();<br><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr>
graphics = null;<br><wbr><wbr><wbr><wbr><wbr><wbr><wbr>
}<br><wbr><wbr><wbr> }</wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr>
<wbr><wbr><wbr> return
newImage;<br>
}<br></wbr></wbr></wbr>
相关推荐
c#代码,针对图片进行缩放以及对图片增加水印
C# 上传图片,生成缩略图,生成文字或图像水印图
说明:生成上传图片的缩略图和为缩略图添加水印;
C# 图片工具类 上传 缩放 裁剪 水印 生成缩略图
功能齐全的.Net缩略图水印组件V2.0正式版,提供图片旋转加水印、图片无损生成、水印文字中文字竖形排列,增加文字纵横排列参数开关、水印图片过滤背景色等功能。
C# 在图片上生成图片水印 文字水印 生成缩略图
SaveIamge 函数提供了失真解决方法,对于处理过的图片(如加水印……)要求保持高品质可以直接调用
asp.net(#C)生成缩略图,加文字水印,加图片水印的类(自己一直在用,不错啊,推荐给大家用)
根据用户所上传的图片进行缩略、添加文字水印和图片水印;
自己用C#写的生成图片缩略图,图片水印,文字水印源码
(1)可以根据自己的需要更改上传到服务器上的目录,上传的源图、缩略图、文字水印图和图片水印图分别存入所定目录下的不同目录; (2)自动检查目录,如无所选择的目录,则自动创建它们; (3)自行设定生成...
本文实例讲述了C#实现的上传图片、保存图片、加水印、生成缩略图功能。分享给大家供大家参考,具体如下: 伴随移动设备地普及,处理图片、视频等需求也变得越来越基础,这里介绍的是图片的存储。 上传图片必须使用...
C#图片操作类,可生成缩略图,添加水印等
描述: 1、支持图片水印 2、支持文字水印 3、支持缩略图生成
C#版Gif水印代码,可以用于asp.net网站,c#项目 该gif水印代码,解决了生成gif水印不清楚,有黑色横线,以及gif透明等问题...gif文字水印,gif图片水印,gif图片缩略图,-非常难得的源代码,亲测可用代码,非dll,有保证。
灵梦版缩略图插件,基于.NET2.0版本开发,可用于ASP.NET网站、应用程序等,插件特点:可指定生成图片大小(如生成图与原图比例不符不会变形),可自由指定图片质量(也可依此调整生成图片所占空间大小),可指定图片水印...
C#关于对图片的操作(生成缩略图,合并图片,加水印文字与图片,生成电子印章,生成验证码等)
C#-图片操作(图片缩略、图片生成文字水印、多图片合成、图片缩放)
在图片上生成图片水印 返回新图片尺寸 图片水印处理方法 图片水印位置处理方法 文字水印处理方法 文字水印位置的方法 调整光暗 反色处理 浮雕处理 拉伸图片 滤色处理 左右翻转 上下翻转 压缩到指定尺寸 转换...