Подтвердить что ты не робот

Измерение ширины пикселя строки

Мне нужно измерить ширину пикселя строки в Cocoa Touch. Может ли кто-нибудь указать мне ссылку, которая объясняет, как это сделать?

4b9b3361

Ответ 1

В iPhone OS это немного отличается, вместо этого посмотрите NSString UIKit Adddition Reference. Идея такая же, как в Cocoa для Mac OS X, но есть и другие методы.

Для одиночных строк текста используйте:

- (CGSize)sizeWithFont:(UIFont *)font 
              forWidth:(CGFloat)width 
         lineBreakMode:(UILineBreakMode)lineBreakMode

И для многострочных текстов используйте:

- (CGSize)sizeWithFont:(UIFont *)font 
     constrainedToSize:(CGSize)size 
         lineBreakMode:(UILineBreakMode)lineBreakMode

Использование аргумента UILineBreakMode в качестве аргумента для отдельных строк текста может сбивать с толку, но это связано с тем, что разрыв строки также используется для определения того, как обрезать текст.

Ответ 3

Вышеупомянутое решение теперь устарело. Проверьте это для iOS 7 +

 sizeWithFont:constrainedToSize:lineBreakMode 

теперь устарел. Используйте ниже фрагмент кода,

UIFont *font=[UIFont fontWithName:@"Arial" size:16.f];

NSString *name = @"APPLE";

CGSize size = [name sizeWithAttributes:@{NSFontAttributeName:font}];