ฟอนต์ฟอรั่ม

สำหรับคนทำฟอนต์ => สอนทำฟอนต์ / บทความเกี่ยวกับฟอนต์ => โพสต์ถูกเริ่มโดย: [ LETSEGO ] เมื่อ 07 ธ.ค. 2012, 07:00 น.

ชื่อเรื่อง: Autohinting ฉบับแบบสมบูรณ์
โพสต์โดย: [ LETSEGO ] เมื่อ 07 ธ.ค. 2012, 07:00 น.
Autohinting ฉบับแบบสมบูรณ์

สวัสดีครับ :46: วันนี้ข้าน้อยจะมาเล่าการทำ Autohinting ด้วย Fontlab

Type 1 Autohinting
ขั้นแรก ให้เข้าไปที่ Files > Font Info (Ctrl+Alt+ F2, Cmd-Opt-F2)
จากนั้นเลือก Hinting Settings
สังเกตว่าช่องด้านขวาจะเป็น Type 1 and TrueType hinting: alignment zones
ให้คลิกที่ปุ่ม Auto zones เมื่อกดเสร็จจะได้ตัวเลขออกมา 4 ชุด แบ่งเป็น BlueValues 3 ชุด และ OtherBlues 1 ชุด
เมื่อเสร็จแล้วให้คลิก OK

(http://s5.postimage.org/nqlf2qlo7/image.png)

จากนั้นให้เข้าไปที่ Tools > Action Set (Ctrl+Shift+T, Cmd+Shift+T)
ตรงส่วนของ Apply action set to: ให้เลือกเป็น All glyphs in the font
ในช่อง Available actions: ให้คลิกที่ Hint and Guidelines แล้วดับเบิ้ลคลิก Remove hint/guides เพื่อย้ายให้มาอยู่ในช่องขวา
เสร็จแล้วดับเบิ้ลคลิก Autohint กับ Autoreplace เมื่อเสร็จเห็นว่ามี 3 คำสั่งในช่องขวา จากนั้นกดปุ่ม Run action set
จะมีหน้าต่างเด้งขึ้นมาสอบถามให้ตอบ Yes

(http://s5.postimage.org/jvmmdwrw7/image.png)

***สำหรับคนที่ลายเส้นเป็นแบบ TrueType ให้เพิ่มคำสั่ง Curves to PostScript กับ Contour direction[T1] ไว้ด้านบน

(http://s5.postimage.org/d1cbo7z93/image.png)

จากนั้นให้เปิด Files > Font Info (Ctrl+Alt+ F2, Cmd-Opt-F2) อีกครั้ง
ภายใต้ Hinting Settings ให้เลือก Standard stems (T1 hinting)
ตรงช่องทางขวาให้กด Auto stems พอกดเสร็จจะมีตัวเลขขึ้นที่ V stems และ H stems
เสร็จแล้วให้คลิก OK

(http://s5.postimage.org/elhnmm7nb/image.png)

เสร็จการทำ Type 1 Autohinting   :45:


TrueType Autohinting
สำหรับการทำ TrueType Autohinting ให้ทำ Type 1 Autohinting ให้เสร็จก่อน
จากนั้นให้เข้าไปที่ Tools > Action Set (Ctrl+Shift+T, Cmd+Shift+T) อีกครั้ง
ตรงส่วนของ Apply action set to: ให้เลือกเป็น All glyphs in the font
(***ดูในช่องขวาถ้าหากว่ามันไม่ว่าง ให้กดเครื่องหมายกากบาทสีแดงตรงมุมขวาล่างเพื่อล้างคำสั่งต่างๆก่อน)
ในช่องซ้ายให้เลือก Contour จากนั้นดับเบิ้ลคลิกที่ Curves To TrueType
ดับเบิ้ลคลิกที่ Contour direction จากเห็นว่าจะมี Contour direction [T1] ขึ้นที่ช่องขวา
ตรงด้านล่างให้เลือก Set direction to TrueType (black on the right) พอเสร็จ
จะเห็นว่า [ T1 ] เปลี่ยนเป็น [ TT ] แล้ว

(http://s5.postimage.org/bfx1wep13/image.png)

กลับไปช่องซ้ายให้ให้เลือก Hints and Guidelines จากนั้นดับเบิลคลิกที่ Convert to instructions
เพื่อเปลี่ยน Type 1 hinting เป็น TrueType hinting พอเสร็จกด Run action set
จะมีหน้าต่างเด้งขึ้นมาสอบถามให้ตอบ Yes

(http://s5.postimage.org/f0sxfmtkn/image.png)

หลังจากทำเสร็จ
Type 1

(http://s5.postimage.org/ot06z0tvb/image.png)

TrueType

(http://s5.postimage.org/59vlpnv3r/image.png)

---------
ชื่อเรื่อง: ตอบ: Autohinting ฉบับแบบสมบูรณ์
โพสต์โดย: าาา๐ เมื่อ 07 ธ.ค. 2012, 07:47 น.
hinting นี่ถือเป็นศาสตร์ลับเลยนะครับ  :12:

-------------------------------------------------

มีคำถามนิดครับ

◘ การทำ type 1 autohinting แบบวิธีด้านบน แตกต่างจากการทำทีละ glyph โดยการกด F7 หรือไม่ครับ
◘ อยากให้ขยายความของคำสั่ง remove hints [bl n] / guide และ autoreplace หน่อยครับ
ชื่อเรื่อง: ตอบ: Autohinting ฉบับแบบสมบูรณ์
โพสต์โดย: iannnnn เมื่อ 07 ธ.ค. 2012, 12:22 น.
โห มหัศจรรย์มากครับ :46:
ชื่อเรื่อง: ตอบ: Autohinting ฉบับแบบสมบูรณ์
โพสต์โดย: [ LETSEGO ] เมื่อ 07 ธ.ค. 2012, 19:01 น.
อ้างคำพูดจาก: าาา๐ เมื่อ 07 ธ.ค. 2012, 07:47 น.
hinting นี่ถือเป็นศาสตร์ลับเลยนะครับ  :12:

-------------------------------------------------

มีคำถามนิดครับ

◘ การทำ type 1 autohinting แบบวิธีด้านบน แตกต่างจากการทำทีละ glyph โดยการกด F7 หรือไม่ครับ
◘ อยากให้ขยายความของคำสั่ง remove hints [bl n] / guide และ autoreplace หน่อยครับ

ไม่แตกต่างกันครับ เพียงแต่จะมีประสิทธิภาพมากว่า เนื่องจากว่าการทำ Autohinting (F7) แบบธรรมดา อาจมีการคำนวนความกว้าง stem กับ BlueValues ผิดพลาดได้ครับ ส่งผลให้ตัวความสูงของตัวอักษรหลังจากการทำ Hinting ไม่เท่ากัน หรือตัวอักษรที่มีความกว้างของ stem เท่ากันแสดงผลเป็น ด้วยจำนวน pixel ต่างกันครับ

คำสั่ง remove hints [bl n] / guide ใช้เพื่อล้างค่า hinting ที่เคยทำไว้ หรือที่ Fontlab ทำไว้ก่อนที่จะมีการตั้งการตั้งค่า Alignment Zones ที่ถูกต้องครับ
ส่วนคำสั่ง autoreplace นั้นใช้เพื่อทำ replacement hint ครับ สำหรับแก้ปัญหา overlapping hint ที่เกิดจากการที่เส้น hint ตัดกันครับ
ชื่อเรื่อง: ตอบ: Autohinting ฉบับแบบสมบูรณ์
โพสต์โดย: Leo Charisma เมื่อ 07 ธ.ค. 2012, 19:50 น.
Advanced มากกกกกก ตามไม่ทัน
ชื่อเรื่อง: ตอบ: Autohinting ฉบับแบบสมบูรณ์
โพสต์โดย: eskimostudio เมื่อ 02 ม.ค. 2013, 12:12 น.
 :12: สุดยอด