采用picturebox做的一个小画图程序中,需要产生颜色合成效果。如 假设第一笔画是蓝色,第二笔画是
黄色,两笔画交叉处是合成的绿色。
通过设置drawmode参数好像并不能产生这样的效果。我试过的另外一种方式是鼠标move时动态
获取当前x,y坐标下的颜色然后与画笔颜色合成,再用合成的颜色更新picturebox的前景色,不过这样
还是达不到效果。
不知道大家是否有好的解决方案?
黄色,两笔画交叉处是合成的绿色。
通过设置drawmode参数好像并不能产生这样的效果。我试过的另外一种方式是鼠标move时动态
获取当前x,y坐标下的颜色然后与画笔颜色合成,再用合成的颜色更新picturebox的前景色,不过这样
还是达不到效果。
不知道大家是否有好的解决方案?
RedV = (ColorV Mod 65536) Mod 256 'Red
GreenV = (ColorV Mod 65536) \ 256 'Green
BlueV = ColorV \ 65536 'Blue 然后与画笔颜色的RGB值分别相加取平均值RedPV,greenPv, bluePV
赋值给Picture1.FillColor
Picture1.FillColor = RGB(RedPV,greenPv, bluePV)
参阅:http://iask.sina.com.cn/b/4525207.html
用的话,最后一个参数传vbSrcPaint
忙了大半天,算是搞定了吧,谢了各位。