ubuntu: แปลงฟอนต์วินโดวส์

จำเป็นต้องใช้ฟอนต์เก่าจากวินโดวส์มาทำอาร์ตเวิร์ก จึงต้องเตรียมฟอนต์เก่าให้สามารถแสดงผลในลินุกซ์ได้
ขั้นตอนคร่าว ๆ มีดังนี้

  • ติดตั้ง FontForge
    $ sudo aptitude install fontforge
  • ดาวน์โหลดซอร์สโค๊ดของฟอนต์ไทย เพื่อเอาไฟล์ sfd มาทำเป็นต้นแบบ - ไฟล์นามสกุล sfd เป็นไฟล์ข้อมูลของโปรแกรม FontForge
  • แตกไฟล์ และนำเอาไฟล์ Loma.sfd จากไดเรคทอรี่ ./thaifonts-scalable-0.4.5/nectec มาทำเป็น template
    $ cp ./thaifonts-scalable-0.4.5/nectec template.sfd
  • เปิดไฟล์ template
    $ fontforge template.sfd
  • Merge เทมเพลตเข้ากับไฟล์ฟอนต์ที่จะแก้ไข ใช้เมนู Element -> Merge Font... จะได้ชุดอักษรจากฟอนต์เก่ามาทับบนเทมเพลต
  • ตั้งชื่อฟอนต์โดยใช้เมนู Element -> Font Info...
  • ตั้ง Encode เป็น Unicode BMP โดยใช้เมนู Encoding -> Reencode -> ISO 16041-1 (UNICODE, BMP)
  • ย้ายชุดอักษรเก่าให้มาทับบนตำแหน่งของยูนิโค๊ด โดยเริ่มที่ชุดของภาษาอังกฤษคือ SPACE (0x0020) จนถึง TILDE(~ = 0x007E) และชุดของภาษาไทยคือ ก.ไก่ (0x0E01) จนถึง ฟองมัน (0x0E5B) และชุดเศษที่เหลือคือ เริ่มตั้งแต่ตำแหน่ง 0xF700 เป็นต้นไป โดยเทียบจากชุดของเทมเพลต (ใช้วิธี cut&paste ธรรมดา ใช้คีย์ ctrl+alt+[ และ ] ในการเลื่อนหาชุดฟอนต์)
  • แก้ไขข้อมูลในชุดสระ คือ อั อิ อี อึ อื อุ อู อฺ อ็ โดยแก้เพียงชุดแรกในช่วง 0x0E01 ถึง 0x0E5B เท่านั้น โดยเติม anchor ตามตัวอย่างจากเทมเพลต ด้วยเมนู คลิกขวา -> Add anchor
  • ตรวจดูความเรียบร้อย แล้วสั่งผลิตฟอนต์จากเมนู File -> Generate Fonts...

ฟอนต์ที่ได้จะสามารถใช้ได้กับลินุกซ์ที่ส่วนใหญ่จะใช้รหัสฟอนต์เป็นยูนิโค๊ด และมีความสามารถในการแก้สระลอยได้ในตัวเอง

หมายเหตุ

  • อาจเลือก AutoHint ได้ตามความเหมาะสม