หน้า: [1] 2 3
 
ผู้เขียน หัวข้อ: Fontlab : Hinting  (อ่าน 43721 ครั้ง)
0 สมาชิก และ 1 ขาจร กำลังดูหัวข้อนี้
ขั้นตอนต่อไปนี้เป็นการ Hint แบบ PostScript นะครับ
ดังนั้นถ้าจะ generate เป็น TrueType Font ก็ต้องทำแบบ TrueType ซึ่งขณะนี้ไม่ได้อธิบายไว้


ขอบคุณ PSK_Type มากๆครับที่มาบอก ไม่งั้นคงโง่อยู่นาน  ฮือๆ~



วันนี้ขอลามปามแนะนำเทคนิคขั้นสูงในการทำฟอนต์นะครับ
ใครจะนำไปใช้หรือไม่ใช้ก็ตาม อันนี้ก็แล้วแต่วิจารณญาณท่านเอง
(ใครรู้เรื่องแล้วก็ประทานอภัยด้วยครับ อวัยวะ)

ไปดูความเดิมตอนที่แล้วดีกว่า

แต่รู้ทั้งรู้ว่าผลงานมันออกมาห่วยมาก ตอนที่มันแสดงผลในมอนิเตอร์ เมื่อใช้ขนาดฟอนต์เล็กๆ
(แต่พอตอนปริ้นต์ออกมาก็คม ชัดเจน อ่านง่ายดีนะ)


(คือถ้าใช้ office 2007 มันจะเป็น cleartype แต่ถ้ารุ่น 2003 หรือต่ำกว่านั้น ฟอนต์จะยิ่งห่วยกว่านี้อีก)

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

สรุปง่ายๆว่าตอนนั้นตูโง่

ปัญหาเรื่องมอนิเตอร์ความละเอียดต่ำๆ ซึ่งมีผลต่อฟอนต์เล็กๆ
สามารถแก้ปัญหาได้ง่ายๆ (แล้วจะไม้ยมกบ่อยๆทำไม) ด้วยการกำหนดสิ่งที่เรียกกันว่า

Hinting
Hinting Hinting Hinting Hinting Hinting Hinting Hinting Hinting .....ๆๆๆๆ

ต้องขอขอบคุณพี่มากๆครับ ที่พี่มายึดคอมเมื่อวานตอนดึก
เลยไปหยิบหนังสือ OpenType มาอ่าน (Recommended)
แล้วไปเจอใจความตอนนึง ที่ทำเอาผมเปิดกบาลมากๆ

ขออนุญาตทำสำเนาช่วงนั้นหน่อยนะครับ

แอบอ้าง
เมื่อจำนวนจุดในการสร้างตัวอักษรที่ไม่เพียงพอ เช่นเมื่อตัวอักษรมีขนาดเล็ก หรือพิมพ์ด้วยความละเอียดต่ำ อาจเกิดความไม่คงที่ของตัวอักษรได้ เนื่องจากในกระบวนการแปลงจุดจะเกิดการปัดส่วนขาดและส่วนเกินจากแนวตะแกรงที่จะสร้างขึ้นเป็นรูปร่างตัวอักษร จึงอาจทำให้ความหนาของเส้นไม่คงที่ได้ หรือถ้าขนาดตัวอักษรเล็กมากๆ อาจไม่สามารถเห็นลักษณะเฉพาะของอักษรนั้นเลยก็ได้

ในฟอนต์ TrueType, Type1 และ OpenType มีวิธีการจัดการกับความไม่คงที่ของการแปลงจุดนี้ เรียกว่า การชี้แนะ (Hinting) ซึ่งเป็นการเพิ่มคำสั่งลงในฟอนต์ เพื่อให้เกิดการแปลงจุดตามการควบคุมของผู้ออกแบบป้องกันไม่ให้เกิดปัญหานี้ขึ้น

อ้าว ไอ้ห่านดินกินหญ้า แล้วงี้ที่ตูอุตส่าห์มานั่งแก้ทีละมิลบ้าบออะไรนั่น ตูจะมาทำทำไม๊  ง่ะ

ว่าแล้วเลยลองค้นหาคำว่า Hinting ในบอร์ด ก็พบว่าเคยคุยกันมาแล้ว (ตั้ง 1 กระจู๋แน่ะ)

http://f0nt.com/forum/index.php/topic,2210.0.html

ในนั้นก็พูดถึงความหมายทั่วๆไปครับ ส่วนวิธีทำไม่ได้บอกไว้ เลยต้องมางมเข็มในมหาสมุทร
(แทนที่จะได้มีเวลาไปอ่าน-ไปดูรูปคนที่ไปมีตติ้ง เสียเวลาจริงๆ โถ... ชีวิตรันทด)

เอาเถอะ

ผมมีฟอนต์อยู่ตัวนึง ซึ่งมีชื่อ XXX
ผมทำเสร็จแล้ว แต่ลองเอามาพิมพ์ดู โดยใช้ขนาด 55 พอยท์ ก็ปรากฏว่า...



สวยดีนะ....

แต่ทว่า ลองเอามาดูขนาด 12



อุบาทว์ฉิบ...

หนทางแก้ก็ง่ายๆครับ มองดูว่าฟอนต์ไหนมีปัญหา ก็จัดการแก้ฟอนต์นั้นซะ
หรือถ้าให้ดี ก็แก้มันให้หมดทุกอักขระเลย (เล่นเอาเสียเวลาพอๆกับทำฟอนต์ทั้งชุด)

วิธีทำก็ง่ายๆ ไปที่เมนู Tools --> Hints & Guides --> Autohinting



สิ่งนี้จะทำให้โปรแกรมมันจัด hint ให้อัตโนมัติ
เอาล่ะ เราก็ลองไปพรีวิวฟอนต์ออกมาดูว่าใช้ได้มั้ย
(การพรีวิว ทำได้ตามกระจู๋นี้ครับ http://f0nt.com/forum/index.php/topic,5461.0.html)

ถ้าดีแล้ว ก็ข้ามไปทำตัวต่อไป
ถ้ายังไม่ดี ก็ต้องมาปรับแบบอัตโนมือเอาเอง

วิธีการปรับแบบแมนวลให้ไปที่
Tools --> Hints & Guides --> Type 1 Hintings



คราวนี้จะเจอการแสดงผลอีกแบบนึงครับ



วิธีในการปรับก็คือให้คุณลากเส้นประคู่สีเขียวๆไปในจุดที่ต้องการ
สังเกตว่าวงกลมมันจะเปลี่ยนตำแหน่งไปด้วย
(ไอ้วงกลมสีเทามันจะแสดงตำแหน่งในการกินของเนื้อฟอนต์ครับ พูดไปก็ไม่เข้าใจ คงต้องลองทำเอง)
- ถ้าจะลบเส้นประที่ไม่ต้องการ กดคลิกขวาที่เส้น แล้วคลิกที่ Delete this hint
- ถ้าจะเพิ่มเส้นคู่ใหม่เข้า กด Ctrl ที่คีย์บอร์ด พร้อมกับลากที่ไม้บรรทัดด้านซ้ายหรือด้านบนในจอ มันก็จะเพิ่มเส้นใหม่ให้เรา
- ถ้าจะแก้ระยะความกว้าง กดคลิกขวาที่เส้น แล้วคลิกที่ Properties ตรงช่อง Width

ทำเสร็จแล้ว คราวนี้ลองมาทดลองฟอนต์ดูซิ ว่าเป็นไงบ้าง



สุดยอด!! การแสดงผลที่ผิดพลาดดังภาพที่ 2 ได้หายไปแล้วอย่างสิ้นเชิง
แต่อย่านิ่งนอนใจไป ลองดูขนาดอื่นๆด้วยว่ามีปัญหาไหม





ถ้าไม่มีปัญหาก็จบแล้วครับ
(ข้อดีของ hint อีกอย่าง คือมันจะทำให้อักษรเราเป็นสีเทา ไม่ใช่ขาว-ดำ
อักษรที่ผ่าน hinting จึงดูนุ่มนวลกว่าเยอะ)

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

ขอบคุณครับทุกท่านที่อ่านตั้งแต่ต้นจนจบ
หวังว่าต่อๆไปคงมีใครซักคนมาช่วยผมเขียนอีกนะั
« แก้ไขครั้งสุดท้าย: 30 เม.ย. 2006, 17:02 น. โดย xxxxx » บันทึกการเข้า
เส้นมันจะบางลงด้วย?

(+1)
บันทึกการเข้า

ใช่ครับ เพราะถ้าเรากำหนด hint
การแสดงผลจะเป็นไปอย่างถูกต้อง

เอาเป็นว่าลองดูในภาพครับ ตัว H เหมือนกัน
แต่มีทั้งแบบยังไม่ได้ Hint และแบบที่ Hint แล้ว

(นี่พี่ก็ว่าฟอนต์ตัวต่อๆไป จะใช้ Hint เข้าช่วยแ้ล้ว)

« แก้ไขครั้งสุดท้าย: 10 เม.ย. 2006, 15:08 น. โดย ooooo » บันทึกการเข้า
ดีมากครับ
บันทึกการเข้า

สะพรึบสะพรั่ง ณหน้าและหลัง ณซ้ายและขวา ละหมู่ละหมวด ก็ตรวจก็ตรา ประมวลกะมา สิมากประมาณ
พอเก็ตละค่ะ ปลื้ม
บันทึกการเข้า

 เจ๋ง เยี่ยมเลย'จารย์

เดี๋ยวว่างจะปั่นมั่ง ละอายใจ  (อิอิ)
บันทึกการเข้า

NP Freedom
i am a slow walker, but i never walk backwards.
Abraham lincoln
ไม่ว่างไม่เป็นไรครับเฮีย ปลื้ม

แต่ไอ้พวกที่ว่าง แล้วแม่มอ้างว่าไม่ว่างนี่สิ มันน่า.... เหลือบ
บันทึกการเข้า
.
« แก้ไขครั้งสุดท้าย: 17 ก.พ. 2007, 15:08 น. โดย Pix » บันทึกการเข้า

ขอบคุณห้าโอ
ผมไม่ว่างจริงๆนะ
ฮิ้ววว
บันทึกการเข้า

        AH_LuGDeK, AH_LuGDeK_R
OpenType หน้านั้นก็อ่านนะ เมื่อนานมาแล้วตอนยังไม่เคยทำฟอนต์ อ่านแล้วไม่เข้าใจ ก็ลืมๆมันไป
5โอ นี่มันเกินเด็กแล้วนะเนี่ย เป็นผู้อาวุโสปลอมตัวมาใช่มั้ยยยยย   ฮิ้ววว

แต่ฟอนต์ที่พี่เคยทำ เนื่องจากวาดใน illus จากรูปสี่เหลี่ยม โค้งต่างๆ copy มาประกอบกัน
มันจึงกว้างเท่าๆกัน เลยยังไม่เห็นปัญหาตอนพิมพ์ตัวเล็กๆในหน้าจอ (หรือไม่สังเกตซะเองหว่า)
ใน FontLab มันวาดแบบที่พี่วาดใน illus รึปล่า copy มาประกอบกันแล้วกด Ctrl+F10 ได้มะ
หรือวาดมือเองทุกเส้นเลยอะ

อย่างตัว H ที่ห้าโอทำให้ดูเป็นตัวอย่างเนี่ย
ความหนาหายไปตั้งครึ่งนึงขนาดนั้น หน้าตาฟอนต์มันไม่เพี้ยนหรอ
บันทึกการเข้า
อันนั้นคงเพี้ยนเลยล่ะครับ
(แต่ภาษาอังกฤษคงได้รับผลกระทบน้่อยครับ เพราะว่ามันไม่มีหัว
และส่วนของเส้นตรงเยอะ ถึงจะปัดส่วนไป แต่มันก็ยังดูดีอยู่)

ส่วนตัว H นั่น ผมขอลอกเอามาจาก Manual ของ FontLab นะครับ

ปล.มันมี Hinting อีกแบบครับ เขาเรียกว่า TrueType Hinting
ซึ่งกำหนดยากกว่ามากๆ เลยขอข้ามครับ (เพราะไม่รู้เรื่อง ไอ้มืดหมี)
บันทึกการเข้า
เพิ่งป่าน อพท หน้านั้นเหมือนกัน
เมื่อวานซืนนี้เอง

ขอบใจมากห้าโอ  (แจ๋ว แจ๋ว)
นี่เป็นความรู้ที่ต้องรู้เลยนะเนี่ย
บันทึกการเข้า

ทำมาหากินด้วยการเปิดร้านสกรีนเสื้อยืด จ้ะ
มีตัวย่อเพิ่มมาอีกหนึ่ง อพท

วันไป meeting เพิ่งถามน้องนุ้กว่า จขกท แปลว่าอะไร  ง่ะ
บันทึกการเข้า
แล้วรู้ไหม รัก แปลว่าอะไร  ปลื้ม







 (เหงื่อแตกพลั่ก)
บันทึกการเข้า

ทำมาหากินด้วยการเปิดร้านสกรีนเสื้อยืด จ้ะ
(มาละๆ ไอ้มุกสอนให้รู้ถึงคำว่ารัก)

ฮิ้ววว


ไปบวชไป๊


บันทึกการเข้า

        AH_LuGDeK, AH_LuGDeK_R
หน้า: [1] 2 3
 
 
Powered by MySQL Powered by PHP Powered by SMF 1.1.21 | SMF © 2006-2007, Simple Machines | Thai language by ThaiSMF Valid XHTML 1.0! Valid CSS!