ผมกำลังค้นหาวิธีทำฟอนต์ด้วยสูตรคณิตศาสตร์ เพราะขี้เกียจวาดทีละตัว แล้วก็เจอ
Metafont กับ
Asymptote ซึ่งเป็นภาษาสำหรับสั่งให้คอมพิวเตอร์วาดภาพด้วยตัวเลข แต่ Metafont แปลงเป็นภาพเวคเตอร์ลำบากเลยลองเล่น Asymptote แทน (คนใช้ Asymptote ส่วนใหญ่คงเป็นนักคณิตศาสตร์หรือไม่ก็โปรแกรมเมอร์ เลยไม่ค่อยมีใครใช้มันวาดฟอนต์)
ใครสนใจวิธีขึ้นโครงฟอนต์แบบวาดเส้นทีเดียวแล้ว preview ดูได้หลายน้ำหนักหลายสไตล์พร้อมกันก็ลองเล่นดูนะครับ น่าจะช่วยประหยัดเวลาได้ ข้อดีคือเราจะเห็นความหนาและสัดส่วนของตัวอักษรหลายน้ำหนักเพียงแค่เขียนโค้ดเพิ่มสูตร (เหมือนตำราอาหาร) ก่อนตัดสินใจเลือกว่าจะเอาสูตรไหนแล้วค่อยเก็บรายละเอียดเพื่อทำฟอนต์ตระกูลใหญ่ต่อไป ข้อเสียคือมันไม่มี GUI ให้นะครับ ต้องใช้ text editor กับ terminal สั่งงานเท่านั้น

จากภาพตัวอย่างนี้ เราสามารถเขียนโค้ดเพื่อวาดเส้นแค่ 2 เส้น แล้วเขียนสูตรเพื่อประกอบมันเป็นตัว
a ผมใช้วิธีพล็อตเส้นสีแดงด้วยโค้ดประมาณนี้
path a1 = (20,440){up} .. tension 0.9 .. (220,610) .. tension 0.9 .. {down}(420,440) -- (420,210){down} .. (480,0){curl 90};
path a2 = (420,420){down} .. (140,290) .. (10,150) .. (140,-10) .. {up}(420,270);
จากนั้นก็เขียนสูตรให้มันเปลี่ยนเป็นสไตล์ calligraphy ที่ดูมีมิติและมีหลายน้ำหนัก (hairline-bold) ถ้าจำไม่ผิดมันคงใกล้เคียงกับ brush ของ Adobe Illustrator? แต่ Asymptote จะยืดหยุ่นกว่าในแง่การใช้สูตรคำนวณได้หลากหลายด้วยการเขียนฟังชั่นใหม่ (มันคงมีวิธีทำให้เส้นเนียนกว่าภาพตัวอย่างของผมนะครับ แต่ผมยังเขียนฟังชั่นไม่เป็น กำลังงม syntax อยู่) ผมก็เพิ่งหัดเขียนโค้ด Asymptote ไม่กี่ชั่วโมงเลยทำอะไรได้ไม่มาก แต่อยากโพสต์ภาพตัวอย่างไว้ เผื่อมีใครใช้วิธีนี้อยู่ผมจะได้ขอคำแนะนำด้วยครับ