ฟอนต์ Z80 Sans ใช้ประโยชน์จากความสามารถที่ซ่อนอยู่ในมาตรฐาน OpenType โดยเฉพาะ Glyph Substitution Table และ Glyph Positioning Table ซึ่งเป็นองค์ประกอบสำคัญในการกำหนดวิธีการแสดงผลกราฟิกของตัวอักษร หรือที่เรียกว่า 'Glyph' ให้สอดคล้องกับ 'Character' หรือรหัสอักขระที่คอมพิวเตอร์ใช้ภายใน เช่น Unicode
ปกติแล้ว ฟอนต์จะกำหนดความสัมพันธ์แบบตรงไปตรงมาระหว่างตัวอักษรกับกราฟิกที่แสดง แต่ในบางกรณี เช่น ตัวอักษรภาษาอาหรับหรือการเชื่อมคำแบบ Ligature ในภาษาอังกฤษ การแสดงผลกราฟิกอาจต้องเปลี่ยนไปตามตำแหน่งหรือตัวอักษรข้างเคียง Z80 Sans จึงใช้หลักการนี้ในการทำงาน โดยกำหนด Glyph ที่เป็นไปได้ทั้งหมดสำหรับแต่ละ ‘nibble’ (4 บิต) ของ Opcode และใช้ ‘recursive descent parser’ เพื่อสร้างกฎการแทนที่ที่จะแสดงผล Glyph ที่ถูกต้องตามบริบท
การนำฟอนต์มาใช้ในลักษณะนี้เป็นการตอกย้ำถึงความซับซ้อนและความสามารถที่ซ่อนอยู่ในระบบการแสดงผลฟอนต์ ซึ่งหลายคนอาจไม่เคยคาดคิดว่ามันสามารถทำได้ถึงขนาดเป็นภาษา Turing-complete หรือใช้รัน WebAssembly ได้ และยังมีการนำฟอนต์ไปประยุกต์ใช้เพื่อเล่นเกม หรือแม้แต่สื่อสารกับโมเดลภาษาขนาดใหญ่ (LLM) ได้อีกด้วย
🏷️ หมวดหมู่: Software Hacks, font, fonts, glyph, ligature, rendering
🔗 อ่านบทความฉบับเต็ม: hackaday