คู่มือใช้งาน
Unicode Emoji 17.0 คืออะไร และเว็บนับอีโมจิ 3,948 แบบอย่างไร
อธิบายไฟล์ emoji-test สถานะ fully-qualified ลำดับ ZWJ สีผิว ธง และวิธีตรวจจำนวนอีโมจิ 3,948 รายการบนเว็บไซต์
SPECIAL CHARACTERS GUIDE
Unicode Emoji 17.0 คืออะไร และเว็บนับอีโมจิ 3,948 แบบอย่างไร
Unicode กับ Emoji เป็นชั้นข้อมูลคนละส่วน
Unicode กำหนด code point และลำดับอักขระ ส่วนผู้ผลิตระบบปฏิบัติการและฟอนต์เป็นผู้วาด glyph หรือภาพที่ผู้ใช้เห็น อีโมจิเดียวกันจึงหน้าตาต่างได้
เมื่อตรวจความถูกต้องควรดู code point ชื่อ และลำดับ ไม่ตัดสินจากภาพบนอุปกรณ์เพียงเครื่องเดียว
เมื่อลองเรื่อง “Unicode กับ Emoji เป็นชั้นข้อมูลคนละส่วน” ให้เก็บข้อความต้นฉบับและผลลัพธ์ไว้เปรียบเทียบ จากนั้นตรวจ code point ระบุตัวอักขระ, sequence รวมหลายตัวเป็นหนึ่งภาพ, glyph เป็นงานออกแบบของแพลตฟอร์ม ตามลำดับ วิธีนี้ช่วยแยกสาเหตุของปัญหา และทำให้เลือกแบบที่ผู้อื่นอ่าน ค้นหา และคัดลอกต่อได้จริง แทนการตัดสินจากหน้าตาเพียงอย่างเดียว
- code point ระบุตัวอักขระ
- sequence รวมหลายตัวเป็นหนึ่งภาพ
- glyph เป็นงานออกแบบของแพลตฟอร์ม
emoji-test ใช้บอกลำดับที่ควรทดสอบ
ไฟล์ emoji-test จาก Unicode Consortium แบ่งกลุ่มและสถานะ เช่น fully-qualified, minimally-qualified, unqualified และ component เพื่อให้ผู้พัฒนาทดสอบการแสดงผล
หน้ารวมของเว็บไซต์เลือก fully-qualified เป็นฐานเพื่อลดลำดับซ้ำที่ต่างเพียง variation selector แล้วเพิ่ม component ที่ตั้งใจแสดงเดี่ยวได้ตามกฎข้อมูล
เมื่อลองเรื่อง “emoji-test ใช้บอกลำดับที่ควรทดสอบ” ให้เก็บข้อความต้นฉบับและผลลัพธ์ไว้เปรียบเทียบ จากนั้นตรวจ fully-qualified มีลำดับแนะนำครบ, minimally-qualified อาจขาดตัวกำหนดรูปแบบ, component ใช้ประกอบลำดับอื่น ตามลำดับ วิธีนี้ช่วยแยกสาเหตุของปัญหา และทำให้เลือกแบบที่ผู้อื่นอ่าน ค้นหา และคัดลอกต่อได้จริง แทนการตัดสินจากหน้าตาเพียงอย่างเดียว
- fully-qualified มีลำดับแนะนำครบ
- minimally-qualified อาจขาดตัวกำหนดรูปแบบ
- component ใช้ประกอบลำดับอื่น
เหตุผลที่หนึ่งอีโมจิมีหลาย code point
ครอบครัว อาชีพ เพศ และรูปแบบสีผิวใช้ Zero Width Joiner หรือ modifier เชื่อมอักขระหลายตัวให้แสดงเป็นภาพเดียว ธงประเทศจำนวนมากประกอบจาก regional indicators
ระบบเก่าที่ไม่รองรับลำดับอาจแสดงเป็นภาพหลายตัว แต่ข้อมูลที่คัดลอกยังเป็นลำดับเดียวกัน
เมื่อลองเรื่อง “เหตุผลที่หนึ่งอีโมจิมีหลาย code point” ให้เก็บข้อความต้นฉบับและผลลัพธ์ไว้เปรียบเทียบ จากนั้นตรวจ ZWJ เชื่อมสมาชิกของลำดับ, skin tone modifier ปรับรูปแบบ, regional indicator สร้างธงประเทศ ตามลำดับ วิธีนี้ช่วยแยกสาเหตุของปัญหา และทำให้เลือกแบบที่ผู้อื่นอ่าน ค้นหา และคัดลอกต่อได้จริง แทนการตัดสินจากหน้าตาเพียงอย่างเดียว
- ZWJ เชื่อมสมาชิกของลำดับ
- skin tone modifier ปรับรูปแบบ
- regional indicator สร้างธงประเทศ
จำนวน 3,948 มาจากไหน
ชุดข้อมูลปัจจุบันมี fully-qualified 3,944 ลำดับจาก Emoji 17.0 และส่วนประกอบเส้นผมที่แสดงเดี่ยวได้อีก 4 รายการ รวม 3,948 รายการไม่ซ้ำในสิบหมวด
ระบบทดสอบเปรียบเทียบจำนวนจากไฟล์ต้นทาง ตรวจรายการซ้ำ และเรียก API ทีละชุดเพื่อยืนยันว่าผู้ใช้โหลดถึงรายการสุดท้ายได้จริง
เมื่อลองเรื่อง “จำนวน 3,948 มาจากไหน” ให้เก็บข้อความต้นฉบับและผลลัพธ์ไว้เปรียบเทียบ จากนั้นตรวจ 3,944 fully-qualified, 4 hair components, 10 หมวดและไม่มีรายการซ้ำ ตามลำดับ วิธีนี้ช่วยแยกสาเหตุของปัญหา และทำให้เลือกแบบที่ผู้อื่นอ่าน ค้นหา และคัดลอกต่อได้จริง แทนการตัดสินจากหน้าตาเพียงอย่างเดียว
- 3,944 fully-qualified
- 4 hair components
- 10 หมวดและไม่มีรายการซ้ำ
มาตรฐานใหม่ไม่ได้แปลว่ารองรับทันที
หลัง Unicode ประกาศรุ่น ผู้ผลิตต้องออกแบบภาพ เพิ่มฟอนต์ และส่งอัปเดตระบบ อุปกรณ์เก่าหรือแอปที่ใช้ชุดภาพของตัวเองจึงอาจเห็นสี่เหลี่ยม
สำหรับข้อความสาธารณะควรเลือกอีโมจิที่รองรับมานานหรือมีคำอธิบายสำรอง โดยเฉพาะเมื่อผู้รับใช้อุปกรณ์หลากหลาย
เมื่อลองเรื่อง “มาตรฐานใหม่ไม่ได้แปลว่ารองรับทันที” ให้เก็บข้อความต้นฉบับและผลลัพธ์ไว้เปรียบเทียบ จากนั้นตรวจ อัปเดตระบบปฏิบัติการ, ตรวจแอปปลายทาง, ใช้ข้อความกำกับอีโมจิใหม่ ตามลำดับ วิธีนี้ช่วยแยกสาเหตุของปัญหา และทำให้เลือกแบบที่ผู้อื่นอ่าน ค้นหา และคัดลอกต่อได้จริง แทนการตัดสินจากหน้าตาเพียงอย่างเดียว
- อัปเดตระบบปฏิบัติการ
- ตรวจแอปปลายทาง
- ใช้ข้อความกำกับอีโมจิใหม่
วิธีตรวจข้อมูลบนเว็บไซต์
ผู้ใช้ค้นจากสัญลักษณ์ ชื่อ Unicode หรือ keyword ไทย เปิดกล่องข้อมูลเพื่อดู code point และใช้ตัวกรองเพื่อลดรายการที่ต้องโหลด
หากพบจำนวนหรือชื่อผิดให้ส่ง URL กลุ่ม สัญลักษณ์ และอุปกรณ์ผ่านหน้าติดต่อ ทีมงานสามารถเทียบไฟล์ต้นทางและย้อนข้อมูลสำรองได้
เมื่อลองเรื่อง “วิธีตรวจข้อมูลบนเว็บไซต์” ให้เก็บข้อความต้นฉบับและผลลัพธ์ไว้เปรียบเทียบ จากนั้นตรวจ เปิดชื่อและ code point, ระบุรุ่นของ Unicode, แจ้งตัวอย่างที่ทำซ้ำได้ ตามลำดับ วิธีนี้ช่วยแยกสาเหตุของปัญหา และทำให้เลือกแบบที่ผู้อื่นอ่าน ค้นหา และคัดลอกต่อได้จริง แทนการตัดสินจากหน้าตาเพียงอย่างเดียว
- เปิดชื่อและ code point
- ระบุรุ่นของ Unicode
- แจ้งตัวอย่างที่ทำซ้ำได้
Original Practical Lab
ทดลองนับ Code point กับอีโมจิที่มองเห็น
เปรียบเทียบอีโมจิเดี่ยวกับลำดับที่ประกอบด้วยหลาย code point เพื่อเข้าใจว่าจำนวนรหัสไม่เท่ากับจำนวนรูป
😀
👩💻
🏳️🌈
วิธีตรวจผลด้วยตัวเอง
- 1.แยกด้วย grapheme cluster ไม่ใช่จำนวน byte
- 2.เก็บ variation selector และ ZWJ ไว้กับลำดับเดิม
- 3.เทียบข้อมูลกับ emoji-test ของ Unicode
คำถามที่พบบ่อย
3,948 แบบรวมอีโมจิสีผิวหรือไม่?
รวมลำดับ fully-qualified ที่มีรูปแบบสีผิว เพศ อาชีพ ครอบครัว และธงตาม emoji-test 17.0
ทำไมบางเว็บไซต์บอกจำนวนไม่เท่ากัน?
แต่ละแห่งอาจนับเฉพาะ base emoji นับทุก qualification หรือรวม component ต่างกัน
อีโมจิใหม่ใช้บนมือถือเก่าได้ไหม?
อาจไม่ได้ เพราะต้องรอฟอนต์และระบบปฏิบัติการรองรับ แม้ลำดับอยู่ในมาตรฐานแล้ว
เว็บไซต์อัปเดตข้อมูลอย่างไร?
ระบบนำเข้าจากไฟล์ Unicode เก็บ backup ตรวจจำนวน ซ้ำ และอักขระผิดปกติก่อนเผยแพร่