2个版本
使用旧的Rust 2015
0.1.1 | 2020年9月6日 |
---|---|
0.1.0 | 2017年7月5日 |
#9 in #byte-vector
13KB
144 行
encoji
将字节数据编码为表情符号,并将表情符号字符串解码为字节向量。
对 base_emoji
的重新实现,包括编码和解码。
示例
let bytes = [0x6e, 0x6e, 0x6e, 0xcd];
let emojis = "🔥🔥🔥🚀";
assert_eq!(encoji::to_string(&bytes), emojis);
assert_eq!(encoji::from_string(&emojis)[..], bytes);
编码(与原始实现相同)
引用 README
使用的表情符号位于
emojis.json
。其中有843个表情符号,但转换器一次读取8位序列,因此只映射到前256个。为了保持与其他渲染的一致性,请确保不要更改emojis.json中表情符号的顺序。
解码
字符串根据 unicode-segmentation
包按照 Unicode标准附录#29 分割成grapheme。如果grapheme不是可映射的表情符号,则跳过,否则将其转换为字节。
许可协议
MIT。见包含的 LICENSE
文件。
依赖项
~0.6–1MB
~15K SLoC