Theppitak's blog

My personal blog.

11 มิถุนายน 2547

Font Design

เขียน blog รวบสองวันเลยละกัน งานทั้งสองวันยังคงเป็นการเพิ่ม OpenType table ในฟอนต์ ฟช ต่อ เมื่อวานทำ Kinnari ส่วนวันนี้เป็น Norasi

พอลงมือทำ Norasi ก็พบความแตกต่างของ design ของสระบนที่ผสมกับพินทุอิ ซึ่งทำให้วรรณยุกต์ไม่ได้วางไว้ตรงกับแนวชานหลังของพยัญชนะ ดังตัวอย่างเปรียบเทียบระหว่าง Norasi (ซ้าย) กับ Kinnari (ขวา):

Norasi-Kinnari design

ซึ่งจะเห็นว่า Kinnari วางวรรณยุกต์ตรงกับแนวชานหลัง การวางตำแหน่ง attachment point ของสระบนจึงกำหนดเอาที่แนวฟันหนูของสระอีเป็นเกณฑ์ทั้งด้านบนด้านล่าง แต่พอมาเจอ Norasi เกิดความแตกต่างระหว่าง attachment point ด้านล่าง (ที่เชื่อมกับพยัญชนะ) กับด้านบน (ที่เชื่อมกับวรรณยุกต์) ของสระบน สรุปว่า กำหนดให้มันต่างกันก็จบ

..แต่พอมันต่างกัน ก็เลยทำให้ต้องเริ่ม fine tune เรื่อง attachment point ทันที จากที่เดิมคิดว่าจะลุยเพิ่ม GPOS/GSUB ให้หมดก่อน แล้วค่อยกลับมา fine tune อีกรอบ ก็เริ่มที่ Norasi นี้เลยละกัน

ใน font design ตาม spec ของ ฟช นั้น กำหนดให้วรรณยุกต์วางตรงแนวกึ่งกลางชานหลัง ซึ่งทำให้ตำแหน่งวรรณยุกต์บนสระอึ สระอือ ต้องอ้างอิงตามตำแหน่งของสระอี ดังรูป

right-justified tone mark position

แต่ถ้าไปดูหนังสือที่เรียงพิมพ์ด้วยตัวตะกั่ว จะเห็นว่าวรรณยุกต์บนสระอึ จะวางในแนวกึ่งกลางนิคหิต และบนสระอือ จะวางในแนวกึ่งกลางระหว่างฟันหนูทั้งสอง พอมาเป็นฟอนต์คอมพิวเตอร์ เครื่องมือการวางวรรณยุกต์ค่อนข้างจำกัด ก็เลยตรึงไว้ที่ตำแหน่งตามสระอี (ความจริงถ้าจะใช้ kerning ช่วยก็พอได้ แต่ kerning จะมีผลกับความกว้างของข้อความด้วย) แต่ในเมื่อ OpenType ให้อิสระในการวางตำแหน่ง ทำไมไม่กำหนด attachment point ให้แสดงวรรณยุกต์ตรงกึ่งกลางฟันหนูและนิคหิตล่ะ?

right-justified tone mark position

ก็เลยจัดการตามนี้ และ commit เข้า CVS สำหรับ Norasi ไว้วันหลังมานั่ง fine tune ฟอนต์อื่นอีกที

0 ความเห็น:

แสดงความเห็น (มีการกลั่นกรองสำหรับ blog ที่เก่ากว่า 14 วัน)

<< กลับหน้าแรก

hacker emblem