如果在NSString
中包含Unicode字符,其中很多都将采用该文本的颜色集 - 它们只是该字体的常规字形,因此它们可以像任何其他字符一样显示。但是有一些着色的Unicode字符,例如GLOBE WITH MERIDIANS,它是带阴影的蓝色渐变。但我在其他地方看到了这个相同的字形,这是一个没有阴影的简单黑色轮廓,例如在iOS键盘中。我想使用那个字形,但没有装饰,也不必创建和使用图像。我想知道不同的字体是否会以不同的格式呈现它,而iOSFonts.com确实显示不同的样式(粗体,斜体),它们都是蓝色的。是否可以获得简单的普通版本?
当然有可能,因为这似乎正是Apple用Tip实现的。请注意,globe是与文本完全相同的颜色,它与所有其他字符一起包含在字符串中。当然那不是UIImage
?
不同字体的字符:
答案 0 :(得分:3)
不幸的是,iOS没有可以使用的单色地球符号;包含U+1F310 GLOBE WITH MERIDIANS
的唯一内置字体是Apple Color Emoji。
如果您真的想要一个将此角色渲染为简单黑色轮廓的字体,您可以将Symbola(可下载的here)的副本打包到您的应用中。
或者,您可以使用所需的图标制作位图图像,并use NSTextAttachment
将其放入属性字符串中。 Apple可能会沿着这些方向做点什么,因为他们的许多提示都包含绝对不是Unicode字符的符号: