วิธีใส่ฟีเจอร์ต้นแบบนายพลแบบปั่น

เริ่มโพสต์โดย Zafire06, 19 มี.ค. 2005, 23:38 น.

0 สมาชิก และ 1 บุคคลทั่วไป กำลังเปิดอ่านโพสต์นี้

Zafire06

เจอกันอีกแล้ว   :26:

1. เปิด Fontlab ขึ้นมา พร้อมทั้งเปิดต้นแบบนายพลด้วย
2. เปิด OpenType Panel ตามภาพ --



3. แล้วจะขึ้น panel แบบนี้


(คลิกเพื่อดูรูปขนาดจริง)

4. นี่คือตัวอย่างฟีเจอร์และสคริปต์ของ GSUB มีคำอธิบายไว้ข้างๆ

feature liga { # ตรงนี้คือฟีเจอร์แท็ก เปิดฟีเจอร์
lookup liga1 { # ตรงนี้คือ Lookup
  sub f f i by ffi; # สมมุติว่าพิมพ์ f f i ติดกันจะกลายเป็น Glyph ที่ชื่อว่า ffi
  sub m [n n.alt1] by mn; # ถ้าสมมุติว่าพิมพ์ m ติดกับ n หรือ n.alt1 จะกลายเป็น Glyph ที่ชื่อว่า mn
} liga1; # ปิด Lookup
lookup liga2 { # ขึ้น Lookup ใหม่
  sub a' b by a.alt1; # ถ้าพิมพ์ a กับ b ติดกัน ตัว a จะกลายเป็น a.alt1
  sub f [l i]' by [l.alt1 i.alt1]; # ถ้าพิมพ์ f ติดกับ l แล้ว l จะกลายเป็น l.alt1 และถ้าพิมพ์ f ติดกับ i แล้ว i จะกลายเป็น i.alt1
} liga2; # ปิด Lookup
lookup liga3 { # เปิดใหม่
  sub p from [p.alt1 p.alt2]; # ถ้าหากว่าพิมพ์ p.alt1 หรือ p.alt2 แล้วจะกลายเป็น p
} liga3; # ปิด
lookup liga4 { # เปิด
  ignore sub A f' f' i'; # สัมพันธ์กับบรรทัดข้างล่าง ถ้าสมมุติว่าพิมพ์ A f f และ i ติดกัน f f i จะไม่เปลี่ยนเป็น ffi
  sub f' f' i' by ffi;
  ignore sub r s' t', s' t' u; # สัมพันธ์กับข้างล่าง ถ้าพิมพ์ r s และ t ติดกัน st จะไม่กลายเป็น st และถ้าพิมพ์ s t และ u ติดกัน s t จะไม่กลายเป็น st
  sub s' t' by st;
} liga4; # ปิด
} liga; # ปิดฟีเจอร์
(ลบข้อความหลัง # และ # ออก ถ้าใช้เป็นตัวอย่างสคริปต์)

5. นี่คือตัวอย่างของ GPOS

feature kern { # เปิดฟีเจอร์
lookup kern1 { # เปิด lookup
  pos L <100 0 300 0>; # จำนวนแรกเป็นระยะห่างหน้า Glyph จำนวนที่สองเป็นการให้ Glyph สูงขึ้นมาจากเส้นบรรทัดปกติ จำนวนที่สามเป็นระยะห่างหลัง Glyph จำนวนที่ 4 เป็นค่าที่จะสูงขึ้นมาจาก Glyph ข้างหน้า
} kern1; # ปิด
lookup kern2 { # เปิด
  pos O T 50; # คือ พิมพ์ O กับ T ติดกัน จะห่างออกมา 50
  pos A W -75; # คือ พิมพ์ A กับ W ติดกัน จะห่างออกมา -75
} kern2;
lookup kern3 { # เปิด
  enum pos y colon -50; # เกี่ยวพันกับบรรทัดล่าง คือ ถ้าพิมพ์ y กับเครื่องหมาย : ติดกันแล้วจะเลื่อนเข้ามาแค่ 50 ไม่ใช่ 75 เหมือนกลุ่มคลาสส์ของมัน
  pos [y y.alt1 y.alt2] colon -75; # คือ ถ้าพิมพ์ y y.alt1 หรือ y.alt2 กับเครื่องหมาย : ติดกันจเลื่อนเข้าหากัน 75 แต่มีข้อยกเว้นข้างบน
} kern3; # ปิด
} kern; # ปิดฟีเจอร์
(เหมือนกับ GSUB คือลบข้อความพร้อม # ออกไป)


5. ลองแทนที่ชื่อ Glyph ในสคริปต์ตัวอย่างด้วยชื่อ Glyph ที่เราต้องการดู
6. เติมต่อจากฟีเจอร์เดิมของฟ๐นต์ลงไป -- อย่าไปยุ่งกับของเก่า ทำ lookup ใหม่เลย
7. กดปุ่ม Compile
8. เจ้นฟ๐นต์ออกมาใช้งานได้แล้ววววว  ฮี่ๆ
9. มีอะไรสงสัยกรุณาซักถามได้ที่นี่ ... ทางเราจะช่วยงมให้ท่าน ...

//แก้ไขครั้งล่าสุด 23 มี.ค. 48

iannnnn



iannnnn


Zafire06

เฮ้ย ไม่ตรงประเด็นว่ะ

นี่คือ

iannnnn

อ๋อ เข้าใจละ
คือ เป็น open source ที่จะเติมอะไรลงไป

Zafire06

อ้างคำพูดจาก: iannnnn เมื่อ 20 มี.ค. 2005, 00:03 น.
อ๋อ เข้าใจละ
คือ เป็น open source ที่จะเติมอะไรลงไป

iannnnn

อ๋อ โอเคๆ
เข้าสูตรเดิม
ยังงั้นพอไปได้


Naipol

NP Freedom
i am a slow walker, but i never walk backwards.
Abraham lincoln

Zafire06


Naipol

NP Freedom
i am a slow walker, but i never walk backwards.
Abraham lincoln

Zafire06

ง่ะ  :26:

ไม่จริ๊งงงง ไม่จริง  :05: :05:

SMF 2.1.7 © 2026, Simple Machines