下段程式碼是設定特殊英文字型 self.rateButton.titleLabel setFont:[UIFont fontWithName:@"Consolas" size:self.rateButton.titleLabel.font.pointSize]]; 但是在中文版時,中文上方會有1-2pixel的截字。 找了很久找不到原因,想說是不是要設定content size。 解法很簡單的思維,判斷語言即可 NSString * language = [[NSLocale preferredLanguages] objectAtIndex:0]; if (![language isEqualToString:@"zh-Hant"] && ![language isEqualToString:@"zh-Hans"]) { self.rateButton.titleLabel setFont:[UIFont fontWithName:@"Consolas" size:self.rateButton.titleLabel.font.pointSize]]; }