使用 Firmonkey 在显示 emoji 字符时,有些 emoji 并无法显示彩色,见下图:
经查 FMX 源码,是因为判断 emoji 的字符区段不足造成的,经过修改后,便可显示,见下图:
修改方法:
LImageChar := ((Char >= $1F0A0) <span style="color: #0000ff;">and (Char <= $1F0FF)) <span style="color: #0000ff;">or ((Char >= $1F300) <span style="color: #0000ff;">and (Char <= $1F5FF)) <span style="color: #0000ff;">or
((Char >= $2196) and (Char <= $2199)) or // <span style="color: #0000ff;"><---- 加入此行,此区段是箭头符号 "↖↗↘↙" 区段<span style="color: #000000;">
((Char >= $1F600) <span style="color: #0000ff;">and (Char <= $1F64F)) <span style="color: #0000ff;">or ((Char >= $1F680) <span style="color: #0000ff;">and (Char <= $1F6FF)) <span style="color: #0000ff;">or<span style="color: #000000;">
((Char >= $1F700) <span style="color: #0000ff;">and (Char <= $1F77F));
如果需要其它 emoji 字符区段,请查阅下方网站,自行加入。
emoji 字符参考: