Graphics画图如何撤销上一步的操作。。。
用C#。。。
C#画图如何撤销
答案:5 悬赏:80 手机版
解决时间 2021-02-28 13:33
- 提问者网友:几叶到寒
- 2021-02-27 15:37
最佳答案
- 五星知识达人网友:持酒劝斜阳
- 2021-02-27 16:59
思路应该是: 一次操作完成后,保存这次操作的全部信息,如果要恢复就得重新执行这次操作,如果你允许程序回退多次,就要保存多次临时信息
全部回答
- 1楼网友:狂恋
- 2021-02-27 21:40
首先,你画图要有画板吧?你在什么地方画东西?所以需要
graphics,
有了画板你得有笔来画线条啊 所以有了pen
恩,写什么字好看呢?狂草还是楷书?多大的字才好?我们需要一个font
你要在什么地方开始画?画多大面积?所以有了point,size.
画出了轮廓你得上色啊?怎么上色?所以有了brush
如果你要修改一张图片怎么办?
你需要有图片先吧?
所以有了image,但是电脑里图片有矢量,位图。。。。
image就成了抽象类,位图bitmap是image的实现类.
然后把图片夹到画板上才能修改啊
image image = image.fromfile("c:\\\\1.jpg");
graphics g = graphics.fromimage(image);
架上图片了你就可以在画板上涂改了啊
我要写多几个字上去
string str = "我恨baidu"; //写什么字?
font font = font("宋体",30f); //字是什么样子的?
brush brush = brushes.red; //用红色涂上我的字吧;
pointf point = new pointf(10f,10f); //从什么地方开始写字捏?
//横着写还是竖着写呢?
system.drawing.stringformat sf = new system.drawing.stringformat();
//还是竖着写吧
sf.formatflags = stringformatflags.directionvertical
//开始写咯
g.drawstring(str,font,brush,point,sf);
//写好了,我要把我的作品收藏起来
image.save("c:\\\\1.jpg");
- 2楼网友:撞了怀
- 2021-02-27 20:06
你可以用双倍缓冲技术,
- 3楼网友:英雄的欲望
- 2021-02-27 19:05
取当前前一步画图底色,用同样动作画同样图案覆盖,
- 4楼网友:七十二街
- 2021-02-27 17:30
每执行一个动作对Graphics的Image备份一下,恢复的时候重绘备份的Image
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯