UILabel sizeWithFont: проблема.Отсечение курсивом - PullRequest
2 голосов
/ 14 августа 2010

Я создал UILabel, который отображает один большой символ.Даже с clipsToBounds = NO;Я все еще получаю отсечение.

Смотрите ссылку: http://img341.imageshack.us/img341/5310/screenshot20100814at243.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 (оранжевый цвет) также обрезает персонажа.Мысли?Может быть, я мог бы отменить некоторые процедуры рисования текста.Кроме того, не уверен, что это та же проблема, что и здесь:

UIButton.titleLabel проблема с обрывом текста

Ответы [ 2 ]

0 голосов
/ 26 февраля 2014

Использовать атрибутивный текст + отступ ...

0 голосов
/ 11 марта 2011

Похоже, это проблема с яблоком.Закончил делать пользовательский рисунок с CoreText.

...