zoukankan
html css js c++ java
asp.net生成高清晰缩略图(转)
Code
1
/**/
///
<summary>
2
///
生成缩略图
3
///
</summary>
4
///
<param name="originalImagePath">
源图路径(物理路径)
</param>
5
///
<param name="thumbnailPath">
缩略图路径(物理路径)
</param>
6
///
<param name="width">
缩略图宽度
</param>
7
///
<param name="height">
缩略图高度
</param>
8
public
void
MakeThumbnail(
string
originalImagePath,
string
thumbnailPath,
int
width,
int
height)
9
{
10
System.Drawing.Image originalImage
=
System.Drawing.Image.FromFile(originalImagePath);
11
12
int
towidth
=
0
;
13
int
toheight
=
0
;
14
if
(originalImage.Width
>
width
&&
originalImage.Height
<
height)
15
{
16
towidth
=
width;
17
toheight
=
originalImage.Height;
18
}
19
20
if
(originalImage.Width
<
width
&&
originalImage.Height
>
height)
21
{
22
towidth
=
originalImage.Width;
23
toheight
=
height;
24
}
25
if
(originalImage.Width
>
width
&&
originalImage.Height
>
height)
26
{
27
towidth
=
width;
28
toheight
=
height;
29
}
30
if
(originalImage.Width
<
width
&&
originalImage.Height
<
height)
31
{
32
towidth
=
originalImage.Width;
33
toheight
=
originalImage.Height;
34
}
35
int
x
=
0
;
//
左上角的x坐标
36
int
y
=
0
;
//
左上角的y坐标
37
38
39
//
新建一个bmp图片
40
System.Drawing.Image bitmap
=
new
System.Drawing.Bitmap(towidth, toheight);
41
42
//
新建一个画板
43
Graphics g
=
System.Drawing.Graphics.FromImage(bitmap);
44
45
//
设置高质量插值法
46
g.InterpolationMode
=
System.Drawing.Drawing2D.InterpolationMode.High;
47
48
//
设置高质量,低速度呈现平滑程度
49
g.SmoothingMode
=
System.Drawing.Drawing2D.SmoothingMode.HighQuality;
50
51
//
清空画布并以透明背景色填充
52
g.Clear(Color.Transparent);
53
54
//
在指定位置并且按指定大小绘制原图片的指定部分
55
g.DrawImage(originalImage,x,y,towidth,toheight);
56
57
try
58
{
59
//
以jpg格式保存缩略图
60
bitmap.Save(thumbnailPath, System.Drawing.Imaging.ImageFormat.Jpeg);
61
}
62
catch
(System.Exception e)
63
{
64
throw
e;
65
}
66
finally
67
{
68
originalImage.Dispose();
69
bitmap.Dispose();
70
g.Dispose();
71
}
72
}
73
查看全文
相关阅读:
用js onselectstart事件鼠标禁止选中文字
模仿苹果菜单的导航
返回页面顶部
商品展示的放大镜效果
键盘控制Div的移动
Div跟随鼠标移动
瀑布流的布局(功能还没有完善)
类似时光轴的效果
ie6-ie8中不支持opacity透明度的解决方法
:active pseudo-class doesn't work in mobile safari
原文地址:https://www.cnblogs.com/yangxiaohu1/p/1333815.html
最新文章
集算器如何处理文本计算——结构化运算
集算器如何处理文本计算——无结构运算
集算器是什么?
关系代数的问题与尝试(5)云数据组织
关系代数的问题与尝试(4)层次数据与交互
关系代数的问题与尝试(3)序运算与离散化
关系代数的问题与尝试(2)关联运算及描述
关系代数的问题与尝试(1)数据处理与代数
SQL转换时间的时分
网址解析
热门文章
SQL中NULL值
SQL批量增加修改数据
html5 sessionStorage 与 localStorage存储
SQL排序问题
SQL中循环和条件语句
SQL表值函数(上月添加1-28)
SQL 创建随机时间的函数
jquery图片轮播
js 通过class来获取元素
js 自定义滚动条
Copyright © 2011-2022 走看看