Uilebel SizeWithFont: проблема. Отсечение курсив текста
-
28-09-2019 - |
Вопрос
Я создал UILabel, который отображает один большой символ. Даже с Clipstobounds = нет; Я все еще получаю отсечение.
Смотрите ссылку: http://img341.imageshack.us/img341/5310/img341/5310/sreenshot20100814at243.png.
Я использовал следующий код:
CGSize fBounds = [myLabel.text sizeWithFont:cFont];
Чтобы получить то, что должно быть ограничительным прямоугольником шрифта. И этикетка нарисована с:
myLabel = [[UILabel alloc] initWithFrame:CGRectMake(20, 20, 280, 300)];
myLabel.clipsToBounds = NO;
myLabel.numberOfLines = 1;
myLabel.textAlignment = UITextAlignmentCenter;
myLabel.adjustsFontSizeToFitWidth = YES;
myLabel.minimumFontSize = 10;
myLabel.text = @"A";
myLabel.font = [UIFont fontWithName:@"CourierNewPSMT" size:300];
myLabel.textColor = [UIColor blackColor];
myLabel.backgroundColor = [UIColor colorWithRed:1 green:.5 blue:0 alpha:.5];
На рисунке ниже размер, возвращенный из SizeWithFont, отображается полупрозрачным синим прямоугольником наложения. Как видите, с курсивом шрифтом (в этом случае Verdana-Bolditalic) персонаж простирается мимо того, что возвращается в SizeWithFont. Кроме того, рамка UILabel (оранжевый цвет) также зажимает характер. Мысли? Может быть, я мог бы переопределить некоторую рутину рисования текста. Также не уверен, что это та же проблема, что и здесь:
Решение 2
Похоже, это проблема яблока. Закончил делать пользовательский рисунок с CORETEXT.
Другие советы
Используйте приписываемый текст + отступ ...