Я создал несколько различных приложений с пользовательскими шрифтами. Я использовал около шести разных, все из разных источников. У каждого из них были проблемы при отображении в iOS. С некоторыми из них они рисовали UILabels выше или ниже системного шрифта того же размера. Другие рисовали в UILabels иначе, чем в UITextFields, рисуя меньше и ниже в UITextFields. Практически все они отображаются в UITextFields по-разному, когда они редактируются, и когда они не редактируются, создавая эффект прыжка текста вниз, когда UITextField входит в режим редактирования. Для тех, кто занимается мелкой детализацией, которая должна быть идеальной до пикселя, это довольно плохо.
Мой вопрос заключается в следующем: что именно в этих шрифтах вызывает такие проблемы? Есть ли какой-то особый атрибут, который есть у системного шрифта, которого нет у этих других шрифтов?
Для дополнительной оценки я хотел бы услышать любые решения общего назначения, которые могут решить эти проблемы для каждого шрифта, если такое возможно. Я надеюсь, что если я смогу понять, почему это происходит, я смогу создать сценарий для предварительной обработки шрифта перед его упаковкой в приложение, чтобы он работал правильно.
Эти проблемы легко воспроизвести, но, поскольку я знаю, что кто-то спросит, я перечислю несколько конкретных шрифтов, которые вызвали у меня проблемы:
- PT без жирного шрифта
- Avenir Next LT Pro Medium Condensed
- Королев Конденсированная среда