将上传图片打上防伪图片水印并写入数据库

王朝asp·作者佚名  2006-01-09
窄屏简体版  字體: |||超大  

// 涉及命名空间

using System;

using System.Collections;

using System.ComponentModel;

using System.Data;

using System.Data.SqlClient;

using System.Drawing;

using System.Drawing.Drawing2D;

using System.Drawing.Imaging;

using System.Web;

using System.Configuration;

// 方法

public void AddUser(string PersonName, string PersonEmail, string PersonSex, string PersonDOB, string PersonImage, string PersonImageType)

{

string strImageType = userImage.PostedFile.ContentType;

Stream ImageStream = userImage.PostedFile.InputStream;

// 加水印----------------->

string wImageFile = Server.MapPath("/bkwww/image/HomeSign.gif"); // 要加的水印图

Image sImage = Image.FromStream(ImageStream); // 从 Http 输入流创建 image

Image wImage = Image.FromFile(wImageFile);

// 绘图

Graphics g = Graphics.FromImage(sImage);

g.DrawImage(wImage, new Rectangle(0, 0, wImage.Width, wImage.Height), 0, 0, wImage.Width, wImage.Height, GraphicsUnit.Pixel);

// 保存,并将 image 转化为 byte[]

MemoryStream ms=new MemoryStream();

byte[] myImage=null;

sImage.Save(ms, ImageFormat.Gif);

myImage = ms.GetBuffer();

//------------------------>

// 写入数据库

string strConn = ConfigurationSettings.AppSettings["ConnectionString"];

SqlConnection myConnection = new SqlConnection(strConn);

SqlCommand myCommand = new SqlCommand("sp_person_isp", myConnection);

myCommand.CommandType = CommandType.StoredProcedure;

myCommand.Parameters.Add("@PersonEmail", SqlDbType.VarChar, 255).Value = PersonEmail;

myCommand.Parameters.Add("@PersonName", SqlDbType.VarChar, 255).Value = PersonName;

myCommand.Parameters.Add("@PersonSex", SqlDbType.Char, 1);

if(sexMale.Checked)

myCommand.Parameters["@PersonSex"].Value = "M";

else

myCommand.Parameters["@PersonSex"].Value = "F";

myCommand.Parameters.Add("@PersonDOB", SqlDbType.DateTime).Value = PersonDOB;

myCommand.Parameters.Add("@PersonImage", SqlDbType.Image).Value = myImage;

myCommand.Parameters.Add("@PersonImageType", SqlDbType.VarChar, 255).Value = ImageType;

try

{

myConnection.Open();

myCommand.ExecuteNonQuery();

myConnection.Close();

Response.Write("添加成功!");

}

catch(System.Exception SqlEx)

{

Response.Write("添加失败!"+SqlEx.ToString());

}

}

/*

www.knowsky.com

Author: sharpcn | Scorpion

Studio: www.bkwww.com

Copyright(c) 2004 明天家园

Function:将上传的图片添加防伪图片水印,并将图片直接写入数据库,不保留在硬盘。

*/

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
 
 
© 2005- 王朝網路 版權所有 導航