Wou*_*hux 21 macos fonts cocoa text kerning
我有一个Cocoa OS X应用程序,可以创建用于打印的PDF.我有一个问题,当我使用小字体时,字距调整似乎都错了.这是一个截屏.这是我的应用程序的PDF输出的放大,使用Helvetica 6点.

正如你所看到的那样,字距变得非常糟糕,一些人物在触摸,而另一些则相距甚远.
我使用的代码基本上看起来像这样(这是一个为我重现问题的简化示例):
NSString* dateStr = @"Printed 04/03/2012";
NSFont* detailsFont = [NSFont fontWithName:@"Helvetica" size:6];
NSMutableAttributedString* printedDate = [[NSMutableAttributedString alloc] initWithString:dateStr];
[printedDate addAttribute:NSFontAttributeName value:detailsFont range:NSMakeRange(0, [dateStr length])];
NSRect printedDateRect = NSMakeRect(0, 0, theWidth, 10);
[printedDate drawInRect:printedDateRect];
Run Code Online (Sandbox Code Playgroud)
这并不是Helvetica独有的,它发生在我尝试过的所有字体中,尽管它在某些字体中比其他字体更明显.如果我使用更大的尺寸,如10,它看起来很好.来自其他应用程序(如Text Edit)的6点Helvetica看起来很好.如何正确渲染6点文本需要做什么?
编辑添加:我刚刚注意到TrueType字体比使用PostScript字体更糟糕.遗憾的是,我没有我想要使用的许多字体的PostScript版本,因此避免使用TrueType并不是一个真正的选择.
我正在运行OS X 10.7.3和XCode 4.2.1.
| 归档时间: |
|
| 查看次数: |
632 次 |
| 最近记录: |