我有一个需要半透明填充的NSBezierPath。当我用纯色填充它时,我得到了预期的结果。然而,当用半透明颜色填充时,我得到的路径是一个圆形的笔触,但却是一个奇怪的矩形填充。看起来是这样的:

而不是填充整个区域,我得到一个填充的矩形内的一个小的,未填充的边界。我将我的路径设置如下:
NSBezierPath *menuItem = [NSBezierPath bezierPathWithRoundedRect:menuItemRect xRadius:3 yRadius:3]
[menuItem setLineWidth:4.0];
[menuItem setLineJoinStyle:NSRoundLineJoinStyle];
[[NSColor whiteColor] set];
[menuItem stroke];
[[NSColor colorWithCalibratedRed:0.000 green:0.000 blue:0.000 alpha:0.500] set];
[menuItem fill];如果有人有什么想法,那就太好了。
谢谢
发布于 2013-06-29 20:00:15
半透明填充与边框重叠,因为NSBezierPath从路径的中间描边,这导致了小边框。白色边框和另一个边框的总和应该是4个像素。因此,为了解决这个问题,我认为您需要创建另一个bezier路径,以防止这2个相互重叠。
https://stackoverflow.com/questions/17374498
复制相似问题