如何使NSView透明,但保留属于它的对象?

Eug*_*din 0 macos cocoa objective-c nsview

在我的应用程序中,我有一个NSView,我用它作为绘图画布,使用NSBezierPath绘制一些原始形状,如rects和ellipses.现在我需要让我的画布透明,但我希望我绘制的形状具有与之前相同的不透明度.我很好奇是否可以这样做,如果是的话,怎么样?!

编辑:

对不起之前的描述很糟糕!

我的最终目标是能够在透明画布上绘制正常的饱和色形状.透明,我的意思是完全清楚,如果可能的话.当我绘制形状时,我的视图一直在重绘,所以即使在这些条件下,我也希望一切都如上所述.

任何形式的帮助表示赞赏!

Pet*_*sey 5

为了使窗口透明的,所以,无论它背后显示出来,设置窗口的backgroundColor[NSColor clearColor]窗口的 opaqueNO.

设置视图opaque是不必要的,因为它已经NO默认,并且因为它不能满足您的需求.opaque视图的属性意味着不同于opaquewindows 的属性.

填充clearColor是不必要的,因为所有这一切都会抹去你之前绘制的内容.如果你之前没有画任何东西,那么你正在擦掉一块干净的木板.

凡是你的意见画(不是clearColor)仍可见.