vb.net如何将绘制的图保存为png图片

请问用Panel2.CreateGraphics.DrawImage方法绘制的图怎么才能保存到硬盘上?... 请问用Panel2.CreateGraphics.DrawImage方法绘制的图怎么才能保存到硬盘上? 展开
 我来答
FMUD1
推荐于2017-09-21 · TA获得超过1008个赞
知道大有可为答主
回答量:1289
采纳率:71%
帮助的人:892万
展开全部
Dim bitmap1 As New Bitmap("D:\image\0183.jpg")‘panel1.backgroundimage
Dim bitmap2 As New Bitmap(294, 294)’保存图,也就是绘制的大小。
Dim rect1 As New Rectangle(New Point, bitmap2.Size)‘昨天的问题,这里似乎写错了,当然也不算错,只是把新图(小图)扩展成原图大小(大图),这里改正为新图的原大小。
Dim rect2 As New Rectangle(New Point(6, 6), bitmap2.Size)
Dim g As Graphics = Graphics.FromImage(bitmap2)
e.Graphics.DrawImage(bitmap1, rect1, rect2, GraphicsUnit.Pixel)
g.DrawImage(bitmap1, rect1, rect2, GraphicsUnit.Pixel)
bitmap2.Save("d:\a.png", Drawing.Imaging.ImageFormat.Png)
追问
e.Graphics.DrawImage(bitmap1, rect1, rect2, GraphicsUnit.Pixel).怎么我这里显示 “Graphics”不是“System.EventArgs”的成员?
后来行了,是不是要放在paint事件里才行?但是这样不能拼图。想把几个图片拼在一起保存
追答
Panel2.CreateGraphics不是等于panel2的paint的e.Graphics吗?
drawimage的名字都一样,你在别的过程中,换下就好啊==
至于g是你保存用的,如果你是要拼图,需要变通下吧
Dim bitmap2 As New Bitmap(294, 294)’该为panel2的大小,作为底图
Dim rect1 As New Rectangle(New Point, bitmap2.Size)‘size改为拼图之一的大小。位置改为拼图要在底图中显示的位置。
Dim rect2 As New Rectangle(New Point(6, 6), bitmap2.Size)‘要从原图中截取的拼图部分,size与上面的rect1的大小一致,位置自定义。
Dim g As Graphics = Graphics.FromImage(bitmap2)
e.Graphics.DrawImage(bitmap1, rect1, rect2, GraphicsUnit.Pixel)
g.DrawImage(bitmap1, rect1, rect2, GraphicsUnit.Pixel)’这个g主要用来保存,与上面的e一样,你要拼图,这个可能要重复几次
bitmap2.Save("d:\a.png", Drawing.Imaging.ImageFormat.Png)
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式