CATextLayer и отслеживание / интервал между символами

Я использую CATextLayer, чтобы использовать пользовательский шрифт в iOS, я знаю, что есть простой способ использовать пользовательский шрифт с Fonts provided by application но это другой шрифт. Мне было интересно, есть ли способ изменить интервал между каждым персонажем? Я не нашел никакой собственности, чтобы сделать это!

EDITED:

 - (void)viewWillAppear:(BOOL)animated { CTFontRef font = [self newCustomFontWithName:@"yeki" ofType:@"ttf" attributes:[NSDictionary dictionaryWithObject:[NSNumber numberWithFloat:16.f] forKey:(NSString *)kCTFontSizeAttribute]]; CGRect screenBounds = [[UIScreen mainScreen] bounds]; normalTextLayer_ = [[CATextLayer alloc] init]; normalTextLayer_.font = font; normalTextLayer_.string = str; normalTextLayer_.wrapped = YES; normalTextLayer_.foregroundColor = [[UIColor purpleColor] CGColor]; normalTextLayer_.fontSize = 50.f; normalTextLayer_.alignmentMode = kCAAlignmentRight; normalTextLayer_.frame = CGRectMake(0.f,100.f, screenBounds.size.width, screenBounds.size.height /1.f); [self.view.layer addSublayer:normalTextLayer_]; CFRelease(font); } 

Вы можете назначить NSAttributedString (или NSMutableAttributedString ) вместо простой NSString для этого слоя и использовать атрибут kCTKernAttributeName (см. kCTKernAttributeName атрибутов строки основного текста ) для настройки кернинга.

Пример:

 CTFontRef font = CTFontCreateWithName(CFSTR("Helvetica"), 30, NULL); NSDictionary *attributes = [NSDictionary dictionaryWithObjectsAndKeys: (id)font, kCTFontAttributeName, [NSNumber numberWithFloat:15.0], kCTKernAttributeName, (id)[[UIColor greenColor] CGColor], kCTForegroundColorAttributeName, nil]; NSAttributedString *attributedString = [[[NSAttributedString alloc] initWithString:@"Hello World" attributes:attributes] autorelease]; CFRelease(font); myTextLayer.string = attributedString; 

Это должно дать вам зеленый текст в Helvetica 30 с увеличенным интервалом между символами.

  • CALayer исчезает после воспроизведения CABasicAnimation назад
  • Как повысить производительность анимации CALayer?
  • Изменение рамки CALayer UIView (self.view.layer.frame = ...), по-видимому, не имеет эффекта
  • Самопрокручиваемый текст внутри CAScrollLayer
  • Что именно удаляетсяOnCompletion = НЕТ делать?
  • эффект складывания / разворота бумаги в твиттере для iPad
  • Заполните круглое кольцо цветом градиента в соответствии с процентом.
  • Подвижная анимация UITableViewCell влияет на несколько ячеек
  • CALayer должен распространяться на все подслои?
  • Анимация Core Animation вне экрана на экранную анимацию
  • Как заставить объект пользовательского интерфейса реагировать после CABasicAnimation
  • Interesting Posts

    Как протестировать Dynamic Type (большие размеры шрифта) в iOS Simulator

    Почему я не могу запустить «обновление подкачки»?

    Как вставить пользовательский вид xib в сцену раскадровки?

    Как изменить шрифт кнопки «Назад» для моей панели навигации?

    Аутентификация приложения HTML5, завернутого в Phonegap (или эквивалент)

    неправильное расположение карты плитки при преобразовании в сетчатку

    Какова цель структуры флагов в iOS?

    NSNumber с запятыми

    Braintree не обновляет предпочитаемый пользователем метод оплаты по умолчанию

    Отладка SEGV_ACCERR с недопустимым указателем

    Как я могу отключить прокрутку, когда «касался» встроенного iframe?

    iOS, как получить ссылку на контроллер вида, встроенный в контейнер раскадровки с помощью segue?

    Удаление приложения iOS с документами в папке с поддержкой iCloud

    отказаться от SKScene вернуться в меню UIKit

    Различные пользовательские изображения для каждого вывода

    Давайте будем гением компьютера.