GDI+ 是否可以实现黑色背景画白线,白色背景画黑线的画笔

demystify 2014-03-13 11:09:59
在用GDI绘图时,可以通过设置绘图方式来实现,调用SetROP2(hdc, R2_NOTMERGEPEN)就可以了,如果背景是黑色,当指定画笔颜色为黑色时,那么画出来的线就是白色的。如果背景为白色,指定的画笔也为白色,那么画出来的线条就是黑色的。

本人初学GDI+, 请问在GDI+中能否实现这样的功能呢?应该怎么做?
...全文
295 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
demystify 2014-03-13
  • 打赏
  • 举报
回复
感谢大家解惑,结贴啦
schlafenhamster 2014-03-13
  • 打赏
  • 举报
回复
试试: R2_COPYPEN Pixel is the pen color. R2_MASKNOTPEN
许文君 2014-03-13
  • 打赏
  • 举报
回复
SetROP2实质上就是异或去画,GDI+据http://m.blog.csdn.net/blog/byxdaz/5972759这篇博文说是不支持异或画的,但可以用其他方法替代。
demystify 2014-03-13
  • 打赏
  • 举报
回复
我是这样测试的: 得到hdc后,调用SetROP2函数,然后再这样创建绘图对象:Graphics graphics(hdc); 但是没有出现期望的效果,这样设置好像不起作用。
allenhiman 2014-03-13
  • 打赏
  • 举报
回复
GDI+也是对hdc进行操作的 你对hdc进行了setpop2 GDI+的pen应该也是生效的吧
allenhiman 2014-03-13
  • 打赏
  • 举报
回复
楼主是不是要做橡皮的功能啊?

15,979

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC 界面
社区管理员
  • 界面
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧