我正在解决一个非常简单的问题,我有几个NSTextField(我现在不能使用NSTextView),并且我需要更改显示文本的行距。
如何减少行高或行距?缩小字体大小不是一种选择。

任何帮助将非常感激!

周末愉快,

!)

最佳答案

作为引用,您想阅读以下段落样式的描述:Cocoa Paragraph Styles,请注意,行之间,段落之间,段落之前等之间的所有附加空间都可以添加。您可以将NSMutableParagraphStyle中的值设置为零,但不能更低。

要进一步缩小行之间的间距,请使用setMaximumLineHeight,这要感谢代码“6 1”(我已经添加了setMaximumLineHeight):

NSString *title = @"title here";
NSFont *bold14 = [NSFont boldSystemFontOfSize:14.0];
NSColor *textColor = [NSColor redColor];
NSMutableParagraphStyle *textParagraph = [[NSMutableParagraphStyle alloc] init];
[textParagraph setLineSpacing:10.0];  // this sets the space BETWEEN lines to 10points
[textParagraph setMaximumLineHeight:12.0]; this sets the MAXIMUM height of the lines to 12points

NSDictionary *attrDic = [NSDictionary dictionaryWithObjectsAndKeys:bold14, NSFontAttributeName, textColor, NSForegroundColorAttributeName, textParagraph, NSParagraphStyleAttributeName, nil];
NSAttributedString *attrString = [[NSAttributedString alloc] initWithString:title attributes:attrDic];
[self.titleField setAllowsEditingTextAttributes:YES];
[self.titleField setAttributedStringValue:attrString];

关于objective-c - cocoa NSTextField行间距,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/8356904/

10-14 00:32