Если вы укажете символы Unicode в NSString
, многие из них возьмут набор цветов для этого текста – они просто обычные глифы для этого шрифта, поэтому они отображаются как любой другой символ. Но есть некоторые символы Unicode, которые окрашены, например GLOBE WITH MERIDIANS, который является синим градиентом с тенями. Но я видел тот же самый глиф в другом месте, что простой черный контур без тени, например, на клавиатуре iOS. Я хотел бы использовать этот символ, но без украшений и без необходимости создавать и использовать изображение. Я задавался вопросом, будет ли другой шрифт отображать его в другом формате, а iOSFonts.com показывает разные стили (более смелые, курсивы) re все синий. Можно ли получить простую версию?
Конечно, это возможно, потому что это похоже на то, что Apple реализовала с помощью Tip. Обратите внимание, что глобус является тем же цветом, что и текст, и он включен в строку вместе со всеми другими символами. Несомненно, что не UIImage
?
Персонаж в разных шрифтах:
EDIT: решение, заданное в связанном вопросе, не работает для этого символа, так как вариантный символ выглядит точно таким же, как оригинал – синий с тенями.
К сожалению, у iOS нет символа монохромного глобуса, который вы можете использовать; единственным встроенным шрифтом, который включает U+1F310 GLOBE WITH MERIDIANS
, является Apple Color Emoji.
Если вам действительно нужен шрифт, который отображает этот символ как простой черный контур, вы можете упаковать копию Symbola (загружаемый здесь) в ваше приложение.
В качестве альтернативы вы можете сделать растровое изображение с нужным значком и использовать NSTextAttachment
, чтобы поместить его в атрибутную строку. Apple, вероятно, делает что-то в этом направлении, так как многие из их советов включают символы, которые определенно не являются символами Unicode: