封装的一些实现图片水印与图片自动结合缩放的类
1
using System;
2
using System.Data;
3
using System.Configuration;
4
using System.Web;
5
using System.Web.Security;
6
using System.Web.UI;
7
using System.Web.UI.WebControls;
8
using System.Web.UI.WebControls.WebParts;
9
using System.Web.UI.HtmlControls;
10
using System.Drawing;
11
namespace WebHelper
12![](https://www.cnblogs.com/Images/OutliningIndicators/ExpandedBlockStart.gif)
![](https://www.cnblogs.com/Images/OutliningIndicators/ContractedBlock.gif)
{
13![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
14![](https://www.cnblogs.com/Images/OutliningIndicators/ExpandedSubBlockStart.gif)
/**//// <summary>
15
/// ImageHelper 的摘要说明
16
/// </summary>
17
public class ImageHelper
18![](https://www.cnblogs.com/Images/OutliningIndicators/ExpandedSubBlockStart.gif)
{
19
public ImageHelper()
20![](https://www.cnblogs.com/Images/OutliningIndicators/ExpandedSubBlockStart.gif)
{
21
//
22
// TODO: 在此处添加构造函数逻辑
23
//
24
}
25![](https://www.cnblogs.com/Images/OutliningIndicators/ContractedSubBlock.gif)
Image水印#region Image水印
26![](https://www.cnblogs.com/Images/OutliningIndicators/ExpandedSubBlockStart.gif)
/**//// <summary>
27
/// 写入图像水印
28
/// </summary>
29
/// <param name="str">水印字符串</param>
30
/// <param name="filePath">原图片位置</param>
31
/// <param name="savePath">水印加入后的位置</param>
32
/// <returns></returns>
33
public string CreateBackImage(System.Web.UI.Page pageCurrent, string str, string filePath, string savePath, int x, int y)
34![](https://www.cnblogs.com/Images/OutliningIndicators/ExpandedSubBlockStart.gif)
{
35
System.Drawing.Image img = System.Drawing.Image.FromFile(pageCurrent.MapPath(filePath));
36
//创建图片
37
Graphics graphics = Graphics.FromImage(img);
38
//指定要绘制的面积
39
graphics.DrawImage(img, 0, 0, img.Width, img.Height);
40
//定义字段和画笔
41
Font font = new Font("黑体", 16);
42
Brush brush = new SolidBrush(Color.Yellow);
43
graphics.DrawString(str, font, brush, x, y);
44
//保存并输出图片
45
img.Save(pageCurrent.MapPath(savePath), System.Drawing.Imaging.ImageFormat.Jpeg);
46
return savePath;
47![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
48
}
49
#endregion
50![](https://www.cnblogs.com/Images/OutliningIndicators/ContractedSubBlock.gif)
Image自动缩小#region Image自动缩小
51![](https://www.cnblogs.com/Images/OutliningIndicators/ExpandedSubBlockStart.gif)
/**//// <summary>
52
/// 缩小图片到指定的大小
53
/// </summary>
54
/// <param name="strOldPic">
55
/// 原图片的位置
56
/// </param>
57
/// <param name="strNewPic">
58
/// 缩小后的图片位置
59
/// </param>
60
/// <param name="intWidth">
61
/// 宽度
62
/// </param>
63
/// <param name="intHeight">
64
/// 高度
65
/// </param>
66
public void SmallPic(string strOldPic, string strNewPic, int intWidth, int intHeight)
67![](https://www.cnblogs.com/Images/OutliningIndicators/ExpandedSubBlockStart.gif)
{
68![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
69
System.Drawing.Bitmap objPic, objNewPic;
70
try
71![](https://www.cnblogs.com/Images/OutliningIndicators/ExpandedSubBlockStart.gif)
{
72
objPic = new System.Drawing.Bitmap(strOldPic);
73
objNewPic = new System.Drawing.Bitmap(objPic, intWidth, intHeight);
74
objNewPic.Save(strNewPic);
75![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
76
}
77![](https://www.cnblogs.com/Images/OutliningIndicators/ExpandedSubBlockStart.gif)
catch (Exception exp)
{ throw exp; }
78
finally
79![](https://www.cnblogs.com/Images/OutliningIndicators/ExpandedSubBlockStart.gif)
{
80
objPic = null;
81
objNewPic = null;
82
}
83
}
84![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
85
public void SmallPic(string strOldPic, string strNewPic, int intWidth)
86![](https://www.cnblogs.com/Images/OutliningIndicators/ExpandedSubBlockStart.gif)
{
87![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
88
System.Drawing.Bitmap objPic, objNewPic;
89
try
90![](https://www.cnblogs.com/Images/OutliningIndicators/ExpandedSubBlockStart.gif)
{
91
objPic = new System.Drawing.Bitmap(strOldPic);
92
int intHeight = Convert.ToInt32(((intWidth * 1.0) / (objPic.Width * 1.0)) * objPic.Height);
93
objNewPic = new System.Drawing.Bitmap(objPic, intWidth, intHeight);
94
objNewPic.Save(strNewPic, objPic.RawFormat);
95![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
96
}
97![](https://www.cnblogs.com/Images/OutliningIndicators/ExpandedSubBlockStart.gif)
catch (Exception exp)
{ throw exp; }
98
finally
99![](https://www.cnblogs.com/Images/OutliningIndicators/ExpandedSubBlockStart.gif)
{
100
objPic = null;
101
objNewPic = null;
102
}
103
}
104![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
105
//public void SmallPic(string strOldPic, string strNewPic, int intHeight)
106
//{
107![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
108
// System.Drawing.Bitmap objPic, objNewPic;
109
// try
110
// {
111
// objPic = new System.Drawing.Bitmap(strOldPic);
112
// int intWidth = Convert.ToInt32(((intHeight * 1.0) / objPic.Height) * objPic.Width);
113
// objNewPic = new System.Drawing.Bitmap(objPic, intWidth, intHeight);
114
// objNewPic.Save(strNewPic, objPic.RawFormat);
115![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
116
// }
117
// catch (Exception exp) { throw exp; }
118
// finally
119
// {
120
// objPic = null;
121
// objNewPic = null;
122
// }
123
//}
124
#endregion
125![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
126
}
127
}
原文地址:https://www.cnblogs.com/chu888chu888/p/615803.html