三星侧屏软件下载:无组件图片上传并加上水印
来源:百度文库 编辑:偶看新闻 时间:2024/04/30 07:20:30
需要给Button添加一个ButUpload_Click方法。在VS.NET环境中直接双击Button控件就可以在后台页面生成Button的OnClick事件的方法了。
二、后台页面就是所谓的.aspx.cs(C#)或者是.aspx.vb(VB)下面我们只提供C#的程序,以下方法就是Button的OnClick事件的方法的具体代码:
protected void ButUpload_Click(object sender, EventArgs e)
{
if (UploadFile.PostedFile.FileName.Trim() != "")//判断File控件是否为空
{
if (UploadFile.PostedFile.ContentLength <= 1048576)//限制上传文件的大小,目前为1M
{
//上传文件
string extension = System.IO.Path.GetExtension(UploadFile.PostedFile.FileName).ToUpper();//获取文件的后缀名并生成大写
Random rd = new Random();
string rdNum = rd.Next(1000, 9999).ToString();//获取一个随机数
string fileName = DateTime.Now.ToString("yyyyMMddHHmmss") + rdNum;//当前时间+随机数生成文件名
string path = Server.MapPath("../Upload/ActicleImgs/") + fileName + extension;//设置服务器上传的路径和文件名称
if (extension == ".GIF" || extension == ".JPG")//判断上传的文件类型是否为.GIF或.JPG
{
UploadFile.PostedFile.SaveAs(path);//在服务器上保存文件
//加文字水印,注意,这里的代码和以下加图片水印的代码不能共存
//System.Drawing.Image image = System.Drawing.Image.FromFile(path);
//Graphics g = Graphics.FromImage(image);
//g.DrawImage(image, 0, 0, image.Width, image.Height);
//Font f = new Font("Verdana", 20);
//Brush b = new SolidBrush(Color.Gray);
//string addText = "www.eso365.com";//设置水印文字
//g.DrawString(addText, f, b, 0, 0);//设置水印文字的位置
//g.Dispose();
//加图片水印
System.Drawing.Image image = System.Drawing.Image.FromFile(path);
System.Drawing.Image copyImage = System.Drawing.Image.FromFile(Server.MapPath("../Upload/ActicleImgs/shuiyin/") + "sylogo.gif");//设置水印图片
Graphics g = Graphics.FromImage(image);
g.DrawImage(copyImage, new Rectangle(image.Width - copyImage.Width, image.Height - copyImage.Height, copyImage.Width, copyImage.Height), 0, 0, copyImage.Width, copyImage.Height, GraphicsUnit.Pixel);//设置水印图片的位置
g.Dispose();
//保存加水印过后的图片,删除原始图片
rdNum = rd.Next(1000, 9999).ToString();
fileName = DateTime.Now.ToString("yyyyMMddHHmmss") + rdNum;
string newPath = Server.MapPath("../Upload/ActicleImgs/") + fileName + extension;
image.Save(newPath);
image.Dispose();
if (System.IO.File.Exists(path))//删除没有水印的图片
{
System.IO.File.Delete(path);
}
}
else
{
Response.Write("");
}
}
else
{
Response.Write("");
}
}
else
{
Response.Write("");
}
}