我有这个代码,用一些文本和默认字体创建简单的UILabel
self.reviewCountLabel = [[UILabel alloc] initWithFrame:someFrame];
self.reviewCountLabel.text = @"1231 REVIEWS";
self.reviewCountLabel.textAlignment = NSTextAlignmentRight;
self.reviewCountLabel.backgroundColor = [UIColor lightGrayColor];
// self.reviewCountLabel.font = [UIFont fontWithName:kSTGFontAvantGardeBold size:18];
[self addSubview:self.reviewCountLabel];
在屏幕上我明白了:
但如果我取消注释添加自定义字体的代码,我会得到这个:
有人可以解释为什么我在这里垂直对齐吗? (或帮助解决它)
答案 0 :(得分:1)
它可能没有与顶部对齐,但新字体的几何(上升,基线等)与系统字体完全不同。在这方面,并非所有字体都像其他字体一样干净。
您可以使用Apple's Font Tool Suite调整几何体,特别是ftxdumperfuser
命令。 Here is an older SO post详细说明了如何使用该工具解决问题。