关于DELPHI 用Image画图,如何实现撤销重复
想实现在图上画直线,或者矩形,可以移动,可以拉伸,现在已经实现。但是用pmNotXor画的话,PEN的颜色就不是自己选的的了,用pmcopy的话,在移动后,也就是删除原图的过程会把背景色删除,变成白色的一片。
现在需要实现用pmNotXor的图片移动效果,但是画笔的颜色要自定义的。
下面的我实现的的图和程序
希望哪位大虾帮我实现这个功能啊,目前还没撤销功能呢,那线也不可以用PEN的原来的用了异或。
忘给出具体操作,先存起来也知道这个思路,具体写还是有一定差距的。
以下提供目前实现的图和源码,请大虾们帮我修改下源码实现撤销,重复功能,实现类似pmNotXor
画线,移动的样子但是画笔的颜色要自定义的,直接用pmNotXor我想做不到的
pmNotXor图
https://skydrive.live.com/redir.aspx?cid=31a6c2f035215520&resid=31A6C2F035215520!147&parid=31A6C2F035215520!145&authkey=!AFJJTGRgYRheoTY
pmCopy图
https://skydrive.live.com/redir.aspx?cid=31a6c2f035215520&resid=31A6C2F035215520!149&parid=31A6C2F035215520!145&authkey=!ANWAH0NyLliPpkg
源码地址
https://skydrive.live.com/redir.aspx?cid=31a6c2f035215520&resid=31A6C2F035215520!151&parid=31A6C2F035215520!150&authkey=!ADQSqa4HpNpuRYs
[解决办法]
如果非要用Image的话,可以这样,
首先把原始图片装入Image中,可以用
Image1.Picture.Assign(BMPImage/JPGImage/..);
当移动,拖动等发生时,首先改变变量如(BoxR:TRect)的值,
然后根据变量来确定是否画线,以及位置
[解决办法]
http://topic.csdn.net/u/20100424/12/22e9ae51-e910-46e5-9e0d-28ec99d93dbb.html
[解决办法]
image上画后是位图,应该没办法多步撤销,准备多个image镜像很耗资源,还是找找矢量图方面的资料。
[解决办法]
可以用DELPHI自带的CHART控件来画图表的,
最起码,可以理理思路的