.net剪切图片源码
从数据库中提取图片,存为bmp
C# code
SqlConnection conn = new SqlConnection("server=.;uid=sa;pwd=;database=库");
conn.Open();
string strSql = "select 字段 from 表 ";
SqlCommand cmd = new SqlCommand(strSql, conn);
SqlDataReader sdr = cmd.ExecuteReader();
sdr.Read();
MemoryStream ms = new MemoryStream((byte[])sdr[0]);
Image image = Image.FromStream(ms);
sdr.Close();
conn.Close();
Bitmap bmp=new Bitmap(image);
截取图片,好像只需要左上角的点和长宽即可. 代码你可以自己换算一下
C# code
-
Rectangle roi = new Rectangle(left, top, Width, Height);
using (Bitmap bmp = new Bitmap(roi.Width, roi.Height))
using (Graphics g = Graphics.FromImage(bmp))
{
g.CopyFromScreen(this.PointToScreen(roi.Location), Point.Empty, roi.Size);
}
存回去
C# code
MemoryStream ms = new MemoryStream();
bmp.Save( ms, ImageFormat.Jpeg );
ms.Flush();
byte[] picbyte= ms.GetBuffer();
ms.Close();
SqlConnection conn = new SqlConnection("server=.;uid=sa;pwd=;database=库");
conn.Open();
string sqlstring = "insert into 表(字段) values(@img)";
SqlCommand cmd = new SqlCommand(sqlstring, conn);
cmd.Parameters.Add("@img", SqlDbType.Image, picbyte.Length).Value = picbyte;
cmd.ExecuteNonQuery(); conn.Close();