增加iOS 5.x中UITextView中表情符号的字体大小

增加iOS 5.x中UITextView中表情符号的字体大小,ios,ios5,fonts,uitextview,emoji,Ios,Ios5,Fonts,Uitextview,Emoji,如果我有UITextView并将字体大小设置为32。当我运行应用程序(在模拟器和设备上)时,我看到一个大光标和我键入的文本,就像我假设的那样。但如果我切换表情符号键盘,它们显示得很小。就像字体的大小从未增加过一样 我知道这些表情符号的字体比例,因为我在OSX Lion中将它们放大到了巨大的比例,如果我创建一个带有表情符号字符的UIButton作为标签,并将字体设置为“Apple Color表情符号”,大小设置为64,它们在我的设备上看起来又大又华丽。似乎只是UITextView没有调整它们的大小

如果我有UITextView并将字体大小设置为32。当我运行应用程序(在模拟器和设备上)时,我看到一个大光标和我键入的文本,就像我假设的那样。但如果我切换表情符号键盘,它们显示得很小。就像字体的大小从未增加过一样


我知道这些表情符号的字体比例,因为我在OSX Lion中将它们放大到了巨大的比例,如果我创建一个带有表情符号字符的UIButton作为标签,并将字体设置为“Apple Color表情符号”,大小设置为64,它们在我的设备上看起来又大又华丽。似乎只是UITextView没有调整它们的大小。

您是否也尝试过将UITextView的字体设置为AppleColorEmoji?在iOS上,AppleColorEmoji似乎是唯一一种可以绘制放大表情符号的字体。使用任何其他字体,表情符号都不会超过20x20像素,正如您所注意到的

我使用,这是一个很好的方法,可以快速获得关于实际设备本身的反馈


我注意到,Game Center应用程序似乎能够将有趣的字体与放大的表情符号混合在一起,因此很明显,它可能比(相当普通的)表情符号字体做得更好!我不知道这是它的代码中的特殊之处,还是它使用的字体的特殊之处,看起来像是自定义字体。

你可以用任何字体缩放表情,只要你设置UITextViews contentScaleFactor,然后使用CGTransform缩放文本字段。(您甚至可以将它们放大到比默认情况下AppleColorMoji允许的更大(分辨率更高)

float scaleFactor = 2.0f;
float resolutionFactor = 2.0f;

CGPoint tempCenter = theTextView.center;

theTextView.contentScaleFactor *= resolutionFactor;
theTextView.layer.contentsScale *= resolutionFactor;


for (UIView *subview in [theTextView subviews]) {
    subview.contentScaleFactor *= resolutionFactor;
    subview.layer.contentsScale *= resolutionFactor;
}

theTextView.transform = CGAffineTransformScale(CGAffineTransformIdentity, scaleFactor, scaleFactor);

theTextView.center = tempCenter;

AppleColorEmoji是一个不错的选择。没有空格。我使用的是相同的字体名称,但是有空格。当我使用苹果表情符号解决问题时,分辨率会变差