Emoji dem la bao nhieu ky tu? - Ly do 1 emoji khong phai luc nao cung la 1 ky tu
Emoji cuoi mat la 1 ky tu? Con emoji gia dinh thi sao? Thuc ra, nhin nhu 1 emoji nhung ben trong co the la nhieu ky tu ket hop lai. Ban da bao gio gap tinh huong "dang le con nhap duoc 1 ky tu ma khong nhap duoc" tren X (Twitter cu) chua?
Cach dem ky tu cua emoji
| Emoji | Nhin thay | So ky tu Unicode | Do dai UTF-16 | So byte UTF-8 |
|---|---|---|---|---|
| Mat cuoi | 1 cai | 1 ky tu | 2 | 4 byte |
| Like | 1 cai | 1 ky tu | 2 | 4 byte |
| Like mau da | 1 cai | 2 ky tu | 4 | 8 byte |
| Gia dinh | 1 cai | 7 ky tu | 11 | 25 byte |
| Co cau vong | 1 cai | 4 ky tu | 6 | 14 byte |
| Co Nhat Ban | 1 cai | 2 ky tu | 4 | 8 byte |
Emoji gia dinh nhin nhu 1 emoji nhung ben trong la "nguoi nam + ky tu ket hop + nguoi nu + ky tu ket hop + be gai + ky tu ket hop + be trai" gom 7 ky tu.
Tai sao so ky tu emoji khong dong deu?
| Co che | Giai thich | Vi du |
|---|---|---|
| Emoji co ban | 1 code point = 1 ky tu | Mat cuoi (U+1F600) |
| Mau da | Emoji co ban + ky tu mau da = 2 ky tu | Like mau da = Like + mau da |
| Ket hop ZWJ | Nhieu emoji noi bang ky tu vo hinh | Gia dinh = nam + ZWJ + nu + ZWJ + gai + ZWJ + trai |
| Co quoc gia | Ket hop 2 ky tu chi vung | Co Nhat = J + P |
ZWJ la viet tat cua "Zero Width Joiner" (ky tu ket hop khong chiem do rong), khong hien thi tren man hinh nhung van dem la ky tu.
Cach dem emoji tren cac mang xa hoi
| Dich vu | Mat cuoi dem la | Gia dinh dem la | Cach dem |
|---|---|---|---|
| X (Twitter cu) | 2 ky tu | 7-11 ky tu | Trong so rieng |
| 1 ky tu | 1 ky tu | Dem theo hinh nhin thay | |
| LINE | 1 ky tu | 1 ky tu | Dem theo hinh nhin thay |
| SMS | 1 emoji chuyen sang gioi han 70 ky tu | Tuong tu | Chuyen doi encoding |
Tren X, moi emoji dem la 2 ky tu. Voi gioi han 140 ky tu, dung nhieu emoji se lam giam so ky tu danh cho van ban. Nhu da de cap trong lich su gioi han ky tu cua X, cach xu ly emoji la bieu tuong cho su phuc tap cua viec dem ky tu.
SMS va moi quan he bat ngo voi emoji
SMS (tin nhan ngan) thay doi gioi han ky tu chi vi them 1 emoji.
| Dieu kien | So ky tu moi tin | Encoding |
|---|---|---|
| Chi chu va so | 160 ky tu | GSM-7 (7 bit) |
| Chi tieng Nhat | 70 ky tu | UCS-2 (16 bit) |
| Co emoji | 70 ky tu | Chuyen sang UCS-2 |
SMS tieng Anh cho phep 160 ky tu moi tin, nhung chi can them 1 emoji la chuyen sang UCS-2 encoding va giam xuong 70 ky tu. Mat 90 ky tu chi vi 1 emoji.
So luong emoji tang lien tuc
| Nam | Phien ban Unicode | Tong so emoji | Emoji moi noi bat |
|---|---|---|---|
| 2010 | 6.0 | Khoang 720 | Mat, dong vat, do an co ban |
| 2015 | 8.0 | Khoang 1.620 | Bien the mau da |
| 2020 | 13.0 | Khoang 3.300 | Ninja, tra sua tran chau |
| 2024 | 16.0 | Khoang 3.790 | Hat, van tay, splatter |
Emoji tang moi nam, den 2024 co khoang 3.790 loai. Emoji dien thoai dau tien (1999, NTT DoCoMo) chi co 176 loai. Trong 25 nam da tang hon 20 lan.
Lap trinh va so ky tu emoji
Dem dung so ky tu emoji trong lap trinh thuc ra la bai toan rat kho.
| Ngon ngu | Ket qua .length cua emoji gia dinh | Ly do |
|---|---|---|
| JavaScript | 11 | Dem code unit UTF-16 |
| Python | 7 | Dem code point Unicode |
| Swift | 1 | Dem grapheme cluster (ky tu nhin thay) |
Cung mot emoji ma tuy ngon ngu lap trinh, "do dai" cho ket qua hoan toan khac nhau: 1, 7, 11. Day la bai toan ung dung phuc tap nhat cua su khac biet giua so ky tu va so byte.
Sach ve emoji va Unicode co the tim tren Amazon.