Font Design
เขียน blog รวบสองวันเลยละกัน งานทั้งสองวันยังคงเป็นการเพิ่ม OpenType table ในฟอนต์ ฟช ต่อ เมื่อวานทำ Kinnari ส่วนวันนี้เป็น Norasi
พอลงมือทำ Norasi ก็พบความแตกต่างของ design ของสระบนที่ผสมกับพินทุอิ ซึ่งทำให้วรรณยุกต์ไม่ได้วางไว้ตรงกับแนวชานหลังของพยัญชนะ ดังตัวอย่างเปรียบเทียบระหว่าง Norasi (ซ้าย) กับ Kinnari (ขวา):
ซึ่งจะเห็นว่า Kinnari วางวรรณยุกต์ตรงกับแนวชานหลัง การวางตำแหน่ง attachment point ของสระบนจึงกำหนดเอาที่แนวฟันหนูของสระอีเป็นเกณฑ์ทั้งด้านบนด้านล่าง แต่พอมาเจอ Norasi เกิดความแตกต่างระหว่าง attachment point ด้านล่าง (ที่เชื่อมกับพยัญชนะ) กับด้านบน (ที่เชื่อมกับวรรณยุกต์) ของสระบน สรุปว่า กำหนดให้มันต่างกันก็จบ
..แต่พอมันต่างกัน ก็เลยทำให้ต้องเริ่ม fine tune เรื่อง attachment point ทันที จากที่เดิมคิดว่าจะลุยเพิ่ม GPOS/GSUB ให้หมดก่อน แล้วค่อยกลับมา fine tune อีกรอบ ก็เริ่มที่ Norasi นี้เลยละกัน
ใน font design ตาม spec ของ ฟช นั้น กำหนดให้วรรณยุกต์วางตรงแนวกึ่งกลางชานหลัง ซึ่งทำให้ตำแหน่งวรรณยุกต์บนสระอึ สระอือ ต้องอ้างอิงตามตำแหน่งของสระอี ดังรูป
แต่ถ้าไปดูหนังสือที่เรียงพิมพ์ด้วยตัวตะกั่ว จะเห็นว่าวรรณยุกต์บนสระอึ จะวางในแนวกึ่งกลางนิคหิต และบนสระอือ จะวางในแนวกึ่งกลางระหว่างฟันหนูทั้งสอง พอมาเป็นฟอนต์คอมพิวเตอร์ เครื่องมือการวางวรรณยุกต์ค่อนข้างจำกัด ก็เลยตรึงไว้ที่ตำแหน่งตามสระอี (ความจริงถ้าจะใช้ kerning ช่วยก็พอได้ แต่ kerning จะมีผลกับความกว้างของข้อความด้วย) แต่ในเมื่อ OpenType ให้อิสระในการวางตำแหน่ง ทำไมไม่กำหนด attachment point ให้แสดงวรรณยุกต์ตรงกึ่งกลางฟันหนูและนิคหิตล่ะ?
ก็เลยจัดการตามนี้ และ commit เข้า CVS สำหรับ Norasi ไว้วันหลังมานั่ง fine tune ฟอนต์อื่นอีกที
0 ความเห็น:
แสดงความเห็น (มีการกลั่นกรองสำหรับ blog ที่เก่ากว่า 14 วัน)
<< กลับหน้าแรก