将阴影(隐藏文本效果)添加到Cocoa标签而不降低文本呈现质量

时间:2009-11-18 22:35:53

标签: cocoa antialiasing shadow nstextfield

我想在Safari或iTunes中创建具有文本效果的状态栏,即隐藏文本。

example

但是,如果我只是使用Core Animation面板在Interface Builder中添加阴影,OS X的最差文本渲染就会出现:

wheres my subpixel

在标签上保留适当的子像素渲染的隐藏文字的诀窍是什么?

2 个答案:

答案 0 :(得分:35)

有一种内置的方法可以做到这一点:

[[yourTextField cell] setBackgroundStyle:NSBackgroundStyleRaised];

答案 1 :(得分:6)

这是一个便宜的老技巧:你在偏移处绘制白色文本然后在它上面绘制黑色文本。

在文本绘图系统中有一个阴影钩子,NSAttributedString的NSShadowAttributeName。但测试一下,它似乎也会杀死亚像素抗锯齿。