不幸的是,Lucida Grande 没有斜体变体,我需要一个。
我在这里的选择似乎有限,我希望有人为我提供更好的选择。
首先,我尝试通过执行以下操作来应用 NSAffineTransform:
NSFont *theFont = [NSFont systemFontOfSize:[NSFont systemFontSizeForControlSize:NSMiniControlSize]];
const CGFloat kRotationForItalicText = -15.0;
NSAffineTransform *italicTransform = [NSAffineTransform transform];
[italicTransform scaleBy:[NSFont systemFontSizeForControlSize:NSMiniControlSize]];
[italicTransform rotateByDegrees:kRotationForItalicText];
theFont = [NSFont fontWithDescriptor:[theFont fontDescriptor] textTransform:italicTransform];
但是,这不会产生特别可读的文本。
我的下一个选择是切换到不同的字体:
theFont = [NSFont userFontOfSize:[NSFont labelFontSize]];
theFont = [sharedFontManager convertFont:theFont toHaveTrait:NSItalicFontMask];
虽然这里的文本在斜体时是可读的,但我宁愿使用相同的字体,因为它明显不同。
当然,我可以对斜体和非斜体文本使用 userFontOfSize 字体,但我目前仅限于使用 systemFontOfSize 字体。
我还有其他(好的)选择吗?
谢谢你。