美文网首页
iOS 检测emoji 当前系统是否支持展示

iOS 检测emoji 当前系统是否支持展示

作者: 红叶潇潇 | 来源:发表于2022-04-15 09:33 被阅读0次

头文件导入:

import <CoreText/CoreText.h>

实现方法如下:参数emoji为:😠 这种

- (BOOL)isEmojiSupported:(NSString *)emoji
{
    NSData *data = [emoji dataUsingEncoding:NSUTF32LittleEndianStringEncoding];
    UTF32Char emojiValue;
    [data getBytes:&emojiValue length:sizeof(emojiValue)];

    UniChar characters[2] = { };
    CFIndex length = (CFStringGetSurrogatePairForLongCharacter(emojiValue, characters) ? 2 : 1);

    CGGlyph glyphs[2] = { };
    CTFontRef ctFont = CTFontCreateWithName((CFStringRef)@"AppleColorEmoji", 0.0, NULL);

    BOOL ret = CTFontGetGlyphsForCharacters(ctFont, characters, glyphs, length);
    CFRelease(ctFont);
    return ret;
}

相关文章

网友评论

      本文标题:iOS 检测emoji 当前系统是否支持展示

      本文链接:https://www.haomeiwen.com/subject/cyufertx.html