栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 前沿技术 > 大数据 > 大数据系统

如何将GDI+绘图结果保存到数据库

如何将GDI+绘图结果保存到数据库

void DrawingImageInsertDatabase()

{

            //创建位图变量
            Bitmap image = new Bitmap(this.Width, this.Height);
            //创建画布
            Graphics g = Graphics.FromImage(image);
            //创建画笔
            Pen p = new Pen(Color.Green, 2f);
            //绘图
            LinearGradientBrush brush = new LinearGradientBrush(new Point(0, 20), new Point(20, 20), Color.Yellow, Color.Blue);
            g.FillRectangle(brush, 0, 0, 200, 100);
           //将绘图结果保存为图片pic.bmp
            image.Save("pic.bmp");
            //查看绘图结果,可省略
            System.Diagnostics.Process.Start("pic.bmp");
            //绘图结果保存到数据库
            Insert("myPicture", ConvertImageToByte(Image.FromFile("pic.bmp")));

}

   //将图片转换为基元数据

   byte[] ConvertImageToByte(Image img)
        {
            using (MemoryStream ms = new MemoryStream())
            {
                img.Save(ms, System.Drawing.Imaging.ImageFormat.bmp);
                return ms.GetBuffer();
            }

        }
        //绘图结果保存到数据库
         void Insert(string fileName, byte[] image)
        {
            using (SqlConnection cn = new SqlConnection(ConfigurationManager.ConnectionStrings[0].ConnectionString))
            {
                if (cn.State == ConnectionState.Closed) cn.Open();

                SqlCommand cmd = new SqlCommand("INSERT INTO image(fileName,image) values(@fileName,@image)", cn);
                cmd.CommandType = CommandType.Text;
                cmd.Parameters.AddWithValue("@fileName", fileName);
                cmd.Parameters.AddWithValue("@image", image);//SqlServer中Image为Image或varbinary(MAX)数据类型
                cmd.ExecuteNonQuery();

            }

        }

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/307330.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号