0

我正在尝试为NSTextViews字符串添加一个漂亮的阴影,到目前为止我有这个代码:

NSShadow *textShadow = [[NSShadow alloc] init];
textShadow.shadowColor = [[NSColor blackColor]
                              colorWithAlphaComponent:0.3];
textShadow.shadowOffset = NSMakeSize(5.0, -5.0);
textShadow.shadowBlurRadius = 3;

NSDictionary *d = @{NSShadowAttributeName : textShadow,
                          NSFontAttributeName : [NSFont fontWithName:@"Arial Black" size:36.0],
                   NSStrokeWidthAttributeName : [NSNumber numberWithFloat:-3.0],
                   NSStrokeColorAttributeName : [NSColor whiteColor]};
[tv setTypingAttributes:d];

总而言之,这会在字符串的右侧和底部产生一个漂亮的阴影,NSTextView但是因为 textview 的内部绘图机制似乎首先绘制字符的“填充”,然后在它周围绘制笔划,阴影位于字符左上角的文本填充上方,如您在此处看到的那样看起来非常糟糕(将发布图像但现在没有足够的声誉 8-/)

有没有更好的方法来添加阴影或“提高”字符串的填充颜色,使其位于阴影之上,或者这种类型的基础框架中的错误?

谢谢和问候,亚历克斯。

4

0 回答 0