单军华
2018-07-12 3e8437ae559487362fae3525beb79c534c213a51
screendisplay/Pods/HMEmoticon/????/Emoticon/NSString+HMEmoji.m
New file
@@ -0,0 +1,39 @@
//
//  NSString+HMEmoji.m
//  表情键盘
//
//  Created by 刘凡 on 16/3/4.
//  Copyright © 2016年 itcast. All rights reserved.
//
#import "NSString+HMEmoji.h"
#define EmojiCodeToSymbol(c) ((((0x808080F0 | (c & 0x3F000) >> 4) | (c & 0xFC0) << 10) | (c & 0x1C0000) << 18) | (c & 0x3F) << 24)
@implementation NSString (HMEmoji)
+ (NSString *)hm_emojiWithIntCode:(unsigned int)intCode {
    unsigned int symbol = EmojiCodeToSymbol(intCode);
    NSString *string = [[NSString alloc] initWithBytes:&symbol length:sizeof(symbol) encoding:NSUTF8StringEncoding];
    if (string == nil) {
        string = [NSString stringWithFormat:@"%C", (unichar)intCode];
    }
    return string;
}
+ (NSString *)hm_emojiWithStringCode:(NSString *)stringCode {
    NSScanner *scanner = [[NSScanner alloc] initWithString:stringCode];
    unsigned int intCode = 0;
    [scanner scanHexInt:&intCode];
    return [self hm_emojiWithIntCode:intCode];
}
- (NSString *)hm_emoji {
    return [NSString hm_emojiWithStringCode:self];
}
@end