保存PictureBox绘制的图像

博客介绍了如何保存在PictureBox上绘制的图像。常见的问题是使用DrawToBitmap保存得到空白图片,作者提出了两种解决方案:一是绑定Bitmap对象并刷新,可能导致闪烁;二是先创建与PictureBox尺寸相同的Bitmap,直接在Bitmap上复制所有绘制操作,然后使用Bitmap的Save方法保存图像。
摘要由CSDN通过智能技术生成

使用PictureBox的CreateGraphics方法,可以在图像框控件上画图,但绘制完成后,使用它的DrawToBitmap方法,保存下来的是空白图片,搜到很多解决方法是对图像控件区域截图,为截图还得写一大串代码。其实还有两个办法,一个是图像控件一开始就绑定一个Bitmap对象,在Bitmap上绘图后刷新重新绑定,但这样会产生闪烁的情况,还有一个方法是对图像控件绘图前,建一个和图像控件一样大小的Bitmap对象,在图像控件上怎么绘制的,在Bitmap对象上照抄一遍,如需保存,使用Bitmap的save方法即可

private void Form1_Load(object sender, EventArgs e)
        {
            bmp = new Bitmap(picAuthor.Width, picAuthor.Height);
            System.Drawing.Graphics g1 = System.Drawing.Graphics.FromImage(bmp);
            g1.Clear(Color.White);
        }

        Point p1, p2;
        bool isDrawing = false,hasDraw=false;
        Bitmap bmp = null;
        private void picAuthor_MouseDown(object sender, MouseEventArgs e)
        {
            p1 = new Point(e.X, e.Y);
            p2 = new Point(e.X, e.Y);
            isDrawing = true;
        }

        priva
  • 1
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值