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

原创 2007年10月01日 13:00:00

// 涉及命名空间
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());
 }
}

 
 
版权声明:本文为博主原创文章,未经博主允许不得转载。

相关文章推荐

如何将上传图片直接保存至SQL Server数据库中

这里演示的是如何将上传图片直接保存至SQL Server数据库中。 在数据库中,图片使用varbinary(MAX)存储: 这是个基于MVC3架构的例子。废话不多说,直接上代码: View: @{ ...

android 为图片打上水印

说起水印其实很简单,就是在一张图片上面画上另一张图片或文字 实现如下:package com.tang.watermark; import android.app.Activity; impor...

asp.net 上传图片处理 水印 缩略图

asp.net 上传图片并作处理(生成缩略图 、在图片上增加文字水印、在图片上生成图片水印),经过测试! 方法类: upFileClass.cs using System; using Syst...

ASP.NET Ueditor上传图片添加水印

为Ueditor的本地上传图片添加水印的功能

上传图片水印

内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:深度学习:神经网络中的前向传播和反向传播算法推导
举报原因:
原因补充:

(最多只允许输入30个字)