1

我有这段代码,用一些文本和默认字体创建简单的 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];

在屏幕上我得到这个:

在此处输入图像描述

但是如果我取消注释添加自定义字体的代码,我会得到这个:

在此处输入图像描述

有人可以解释为什么我在这里垂直对齐到顶部吗?(或帮助解决)

4

1 回答 1

1

它可能没有与顶部对齐,但新字体的几何形状(上升线、基线等)与系统字体完全不同。在这方面,并非所有字体都像其他字体一样干净。

您可以使用Apple 的 Font Tool Suite调整几何图形,特别是ftxdumperfuser命令。 这是一篇较旧的 SO 帖子,其中非常详细地描述了如何使用该工具来解决您的问题。

于 2013-03-18T15:35:18.280 回答