发布于 2016-05-26 04:46:39 | 75 次阅读 | 评论: 0 | 来源: 网友投递

这里有新鲜出炉的精品教程,程序狗速度看过来!

ASP.NET

ASP.NET 是.NET FrameWork的一部分,是一项微软公司的技术,是一种使嵌入网页中的脚本可由因特网服务器执行的服务器端脚本技术,它可以在通过HTTP请求文档时再在Web服务器上动态创建它们。 指 Active Server Pages(动态服务器页面) ,运行于 IIS(Internet Information Server 服务,是Windows开发的Web服务器)之中的程序 。


Asp.net 取得文件后缀名,保存文件,加入文字水印的代码类


using System; 
using System.Data; 
using System.Configuration; 
using System.Web; 
using System.Web.Security; 
using System.Web.UI; 
using System.Web.UI.WebControls; 
using System.Web.UI.WebControls.WebParts; 
using System.Web.UI.HtmlControls; 
using System.Drawing; 
using System.IO; 
using System.Drawing.Imaging; 

namespace EC 
{ 
/// <summary> 
/// 上传类 
/// </summary> 
public class UploadObj 
{ 

public UploadObj() 
{ 
// 
// TODO: 在此处添加构造函数逻辑 
// 
} 
/// <summary> 
/// 允许文件上传的类型枚举 
/// </summary> 
public enum FileType 
{ 
jpg,gif,bmp,png 
} 

#region 取得文件后缀 
/// <summary> 
/// 取得文件后缀 
/// </summary> 
/// <param name="filename">文件名称</param> 
/// <returns></returns> 
public static string GetFileExtends(string filename) 
{ 
string ext = null; 
if (filename.IndexOf('.') > 0) 
{ 
string[] fs = filename.Split('.'); 
ext = fs[fs.Length - 1]; 
} 
return ext; 
} 
#endregion 

#region 检测文件是否合法 
/// <summary> 
/// 检测上传文件是否合法 
/// </summary> 
/// <param name="fileExtends">文件后缀名</param> 
/// <returns></returns> 
public static bool CheckFileExtends(string fileExtends) 
{ 
bool status = false; 
fileExtends = fileExtends.ToLower(); 
string[] fe = Enum.GetNames(typeof(FileType)); 
for (int i = 0; i < fe.Length; i++) 
{ 
if (fe[i].ToLower() == fileExtends) 
{ 
status = true; 
break; 
} 
} 
return status; 
} 
#endregion 

#region 保存文件 
/// <summary> 
/// 保存文件 
/// </summary> 
/// <param name="fpath">全路径,Server.MapPath()</param> 
/// <param name="myFileUpload">上传控件</param> 
/// <returns></returns> 
public static string PhotoSave(string fpath,FileUpload myFileUpload) 
{ 
string s = ""; 
string fileExtends = ""; 
string fileName = myFileUpload.FileName; 
if (fileName != "") 
{ 
//取得文件后缀 
fileExtends = EC.UploadObj.GetFileExtends(fileName); 
if (!EC.UploadObj.CheckFileExtends(fileExtends)) 
{ 
EC.MessageObject.ShowPre("上传文件类型不合法"); 
} 
Random rd = new Random(); 
s = EC.RandomObject.DateRndName(rd) + "." + fileExtends; 
string file = fpath + "\\" + s; 
try 
{ 
myFileUpload.SaveAs(file); 
} 
catch (Exception ee) 
{ 
throw new Exception(ee.ToString()); 
} 
} 
return s; 
} 

#endregion 

#region 加入文字水印 

/// <summary> 
/// 加入文字水印 
/// </summary> 
/// <param name="fileName">文件名称路径(全路径)</param> 
/// <param name="text">文件</param> 
public void AddTextToImg(string fileName, string text) 
{ 
if (!File.Exists(fileName)) 
{ 
throw new FileNotFoundException("文件不存在"); 
} 
if (text == string.Empty) 
{ 
return; 
} 
//判断文件类型是否为图像类型 

System.Drawing.Image image = System.Drawing.Image.FromFile(fileName); 
Bitmap bitmap = new Bitmap(image, image.Width, image.Height); 
Graphics g = Graphics.FromImage(bitmap); 
float fontSize = 12.0f;//字体大小 
float textWidth = text.Length * fontSize;//文本的长度 
//下面定义一个矩形区域,以后在这个矩形里面画上白底黑字 
float rectX = 0; 
float rectY = 0; 
float rectWidth = text.Length * (fontSize + 8); 
float rectHeight = fontSize + 8; 
//声明矩形域 
RectangleF textArea = new RectangleF(rectX, rectY, rectWidth, rectHeight); 
Font font = new Font("宋体", fontSize);//定义字体 
Brush whiteBrush = new SolidBrush(Color.White);//白笔刷,画文字用 
Brush blackBrush = new SolidBrush(Color.Black);//黑笔刷,画背景用 
g.FillRectangle(blackBrush, rectX, rectY, rectWidth, rectHeight); 
g.DrawString(text, font, whiteBrush, textArea); 
MemoryStream ms = new MemoryStream(); 
bitmap.Save(ms, ImageFormat.Jpeg); 
//输出处理后的图像,这里为了演示方便,我将图片显示在页面中了 
//Response.Clear(); 
//Response.ContentType = "image/jpeg"; 
//Response.BinaryWrite(ms.ToArray()); 
g.Dispose(); 
bitmap.Dispose(); 
image.Dispose(); 
} 
#endregion 
} 
} 



最新网友评论  共有(0)条评论 发布评论 返回顶部

Copyright © 2007-2017 PHPERZ.COM All Rights Reserved   冀ICP备14009818号  版权声明  广告服务