Objective-C - рендеринг шрифта iOS5 изменился?

В iOS4 (4.3 симулятор), когда я использую шрифт Myriad Pro со следующим методом шрифта для ячейки:

cell.titleLabel.font = [UIFont fontWithName:@"Myriad Pro" size:14];

Он выглядит следующим образом:

enter image description here

В iOS5 (5.0 симулятор), когда я использую шрифт Myriad Pro с тем же методом шрифтов, он выглядит так:

enter image description here

Кто-нибудь испытал это поведение (возможно, с другими шрифтами?).

Ответ 1

При использовании +fontWithName:size: в iOS 5 параметром имени шрифта должно быть полное имя файла шрифта в вашем приложении, а не только имя семейства шрифтов.

Ответ 2

Отрисовка шрифтов изменилась в iOS 5. В iOS 4 можно было использовать только одно лицо в файле шрифта независимо от того, сколько лиц было в файле шрифта и с которым вы обращались.

iOS 5 позволяет использовать все грани во встроенном файле шрифта.

В нашем случае мы запрашивали обычный шрифт, но вместо этого получали вместо него светлый шрифт. В iOS 5 мы возвращаем очередной, который прикручивает несколько интервала UILabel.

Ответ 3

Это поможет, если я увижу больший скриншот, но, похоже, это Myriad Pro Condensed вместо Myriad Pro. Документация для fontWithName:size: говорит об этом fontName:

Полностью указанное имя шрифта. Это имя включает в себя как имя семейства шрифтов, так и конкретную информацию о стиле для шрифта.

При прохождении "Myriad Pro" вы указываете только фамилию. Возможно, система выбирает случайным образом неправильный член семейства шрифтов для вас. Поэтому попробуйте указать полное имя требуемого шрифта, который в этом случае будет "Myriad Pro Regular".