我创建了一个绘图程序。它效果很好,您可以导入图像并使用不同的颜色和画笔配置对其进行注释。
我的问题是我不知道如何允许擦除。我为 android 编写了同样的应用程序,并使用 PorterDuffXferMode 对象进行擦除。我无法在 Cocoa 中找到类似的东西。
我错过了一些明显的东西吗?我是可可豆。
我正在使用 NSBezierPath 和 NSRectFill 的组合来绘制 NSView。
更新:
在阅读这里的回复之前,我修改了我的代码以在原始 NSView 下方使用嵌套的 NSView。所以我的想法是在底部的 Z 顺序视图上绘制背景图像,并在顶部的 NSView 上完成所有图形。它画得很好,但是在我的顶视图中,我在要擦除的区域上调用 NSClearRect 并且它是白色的,而不是擦除到底层。
为什么不显示到底层?
我将研究使用 CALayers,但您必须给我一些时间来消化您所写的内容。就像我之前说的,我是 Objective C 和 Cocoa 的菜鸟。