การเขียนสคริปต์ Ligature ใน Fontlab

เริ่มโพสต์โดย ijiryu, 16 เม.ย. 2016, 10:16 น.

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

ijiryu

คือว่ามีวิธีการเขียนสคริปต์แบบถ้าเจ้าตัวอักษรสองตัวพิมพ์ติดกันให้เปลี่ยนไปใช้ Glyph อื่นมั้ยครับ
เว็บส่วนตัว www.ijiryu.com

ปอมป๋วย

#1
ใช้ liga

sub a b by ab; >> เปลี่ยนทั้ง a b เป็น ab ตัวเดียว
sub a b c by abc; >> เปลี่ยนทั้ง a b c เป็น abc ตัวเดียว
sub [a b c] d' by abcd; >> เปลี่ยนเฉพาะ d' เป็น abcd ตัวเดียว

จะกี่ตัวก็ได้ครับ
ติดตาม และช่วยส่งเสียค่าเลี้ยงดูได้ที่ ธรรมดาสตูดิโอ

ijiryu

เว็บส่วนตัว www.ijiryu.com

iannnnn

เยี่ยมเลยครับ ขอย้ายไปไว้ในห้องสอนฟอนต์เด้อ

Wandwarun


ijiryu

แล้วที่เขียนว่า
lookup liga1;
lookup liga0;

ignore sub
script latn;

มันหมายความว่าอะไรครับ
เว็บส่วนตัว www.ijiryu.com

plypoogun

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

iannnnn

ไม่ได้เป็นความลับนะครับ แต่มันไม่ค่อยมีคนทำครับ
แล้วเดี๋ยวนี้การทำฟอนต์ก็มีหลายเทคนิคหลายวิธีครับ ฟอนต์แล็บเป็นเพียงหนึ่งในวิธีเหล่านั้นจ้ะ
(ผมเองก็ทำไม่เป็น  :05:)

plypoogun

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

ปอมป๋วย

อ้างคำพูดจาก: plypoogun เมื่อ 12 ก.ค. 2018, 13:12 น.
ไม่น่าเชื่อนะคับ คุณแอนทำไม่เป็น ผมอยากรู้ลึก คำสั่งต้องเขียนอย่างไร กำหนดอย่างไร ใช้เครื่องหมายอะไร ในการปิดเปิด และสั่งให้ฟอนต์ทำงานตามที่เราต้องการ  ผมลองไปแก้ ไปเปลี่ยนสคลิป แต่มันก็ไม่เปลี่ยนเลย เลยงงไปใหญ่  อย่างเช่น คำสั่งในฟอนต์นั้น สั่งให้สระวรรณยุกต์ หลบหาง ป.ปลา ฝ.ฝา และ ฟ.ฟัน ผมก็ลองใส่ ช.ช้าง ส.เสือ ศ.ศาลา (ที่มันมีหางยาว) เข้าไป กดคอมไพล์ แล้วGEN ฟอนต์ ออกมา และแล้วมันก็ไม่เปลี่ยน ตามใจต้องการ ผู้รู้ช่วยตอบหน่อยครับ เป็นเพราะอะไรคำสั่งนี้ ถึงใช้ไม่ได้ อยากรู้จริงๆคับ

ก็อป syntax ที่ปรับแก้ไปมาให้ดูหน่อยครับ
มาแค่นี้ยังงง ๆ ไม่รู้จะเริ่มตรงไหนฮะ
ติดตาม และช่วยส่งเสียค่าเลี้ยงดูได้ที่ ธรรมดาสตูดิโอ

plypoogun


ตามรูป ในliga20 ผมสั่งให้  ฉ น ณ ที่ใช้สระอุ สระอู และ พินทุ (ตัวปกติ)ให้ไปใช้ สระอุ โล สระอูโล พินทุโล ผมเขียนแบบนี้ถูกต้องมั้ยคับ
ถ้าถูก ผมกด คอมไพล์ แล้ว GEN ฟอนต์ออกมา ทำไมมันไม่ทำตามคำสั่งเลย  ผมผิดพลาดตรงไหนคับ และที่ถูกต้องต้องทำอย่างไรคับ การทำฟอนต์แต่ละฟอนต์ก็ไม่นานนะ แต่การหาวิธีแก้นี่ยากกว่าการทำฟอนต์ตัวนึงซะอีก ช่วยด้วยครับ ขอบคุณล่วงหน้าคับ

Layiji

เอ เหมือนตรง 19 จะผิดหรือเปล่าครับ เห็นมี ' สองจุด
มันเลยส่งผลกับ 20

เดานะครับ  :30:
นักเขียนการ์ตูนรายปี

ปอมป๋วย

#12
อ้างคำพูดจาก: plypoogun เมื่อ 21 ก.ค. 2018, 18:55 น.

ตามรูป ในliga20 ผมสั่งให้  ฉ น ณ ที่ใช้สระอุ สระอู และ พินทุ (ตัวปกติ)ให้ไปใช้ สระอุ โล สระอูโล พินทุโล ผมเขียนแบบนี้ถูกต้องมั้ยคับ
ถ้าถูก ผมกด คอมไพล์ แล้ว GEN ฟอนต์ออกมา ทำไมมันไม่ทำตามคำสั่งเลย  ผมผิดพลาดตรงไหนคับ และที่ถูกต้องต้องทำอย่างไรคับ การทำฟอนต์แต่ละฟอนต์ก็ไม่นานนะ แต่การหาวิธีแก้นี่ยากกว่าการทำฟอนต์ตัวนึงซะอีก ช่วยด้วยครับ ขอบคุณล่วงหน้าคับ

sub [ฉ น ณ] [อุปกติ อูปกติ พินทุปกติ]' by [อุโล อูโล พินทุโล];

แค่นี้ก็ได้ครับ
(ซึ่งดูเหมือนใน liga20 ก็ถูกแล้วนะฮะ - ผมจำเลข unicode ไม่ได้ ซึ่งคิดว่าน่าจะใช่แหละ 555)

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

หรือทั้งหมด ถ้า scripts เป็นตามที่วางแผนไว้แล้ว
ลองดูใน glyph สระล่างตำแหน่ง low ว่าเราวางถูกตำแหน่งไหมฮะ ?
อันนี้ไม่ได้กวนนะ เมื่อก่อนผมเคย แก้เกือบตาย
เอ้าไอ้ห้า !! add component มาแล้วไม่ได้ปรับตำแหน่ง  :30:

หรือลองให้ง่ายสุด
ย้าย liga20 เป็น liga00 หรือ 01 ไปเลย
ให้มันทำคำสั่งนี้ก่อน - ผมค่อนข้างมั่นใจว่าแก้ได้ - แต่จริง ๆ ก็เดานั่นแหละ :30:
คือไม่รู้ที่มาที่ไปของ glyph ที่โผล่มา liga19 เลยเดามาทางนี้

ถ้าอันนี้แก้ปัญหาได้ แปลว่า ระหว่างทางมา liga20 (ของเดิม)
มีคำสั่งอันไหนสักอย่าง ที่ไปเปลี่ยนสระล่างเป็น glyph อื่น ก่อนเดินทางมาถึง liga20 (เดิม) ครับ

*** การรันคำสั่ง - จะเรียงจากบนลงล่างฮะ - ถ้าต้นทางเปลี่ยนไปแล้ว
*** แปลว่า หลังจาก ฉ น ณ จะไม่เจอ -ุ -ู -ฺ
*** เลยทำให้ liga20 (เดิม) ไม่ได้ทำงาน เพราะไม่ตรงเงื่อนไข

===============================

อันนี้ไม่เกี่ยว

ชุดใหม่ผมลองมาใช้ anchor mark
สะดวกดีนะฮะ
แต่ fontlab vi เหมือนยังมี bug นิดหน่อย
make [mkmk] ยังมีบาง glyph ไม่ขึ้นมาใน feature
(อาจเพราะผมทำอะไรพลาดไปเองด้วยมั้ง)
เลยยังต้องมาเขียนมือเพิ่มบางตัวฮะ
ติดตาม และช่วยส่งเสียค่าเลี้ยงดูได้ที่ ธรรมดาสตูดิโอ

plypoogun

ขอบคุณที่ตอบนะครับ อธิบายได้ดีมากเลยคับ ผมเข้าใจในการอธิบายคับ   ตัวคำสั่งก่อนหน้านี้ ที่สั่งให้ใช้ สระอุ อู พินทุ โล ก็คือคำสั่งให้หลบ ตัว ฎ ฏ ฐ ประมาณนี้   ส่วน liga20 ผมมาเพิ่มเติมทดลองทำดู แล้วก็ไม่ได้ผล อย่างที่เห็น อาจเป็นเพราะว่า มันมีคำสั่งก่อนหน้านั้นแล้ว ที่ให้หลบ ฎฏฐ  มันถึงไม่ผ่าน   ส่วน liga19 นั้น ผมไม่ได้ทำเอง คือมันมากับฟอนต์อยู่แล้ว ก็ไม่รู้ว่าเค้าสั่งให้ไปทำอะไร    ถ้าเป็นแบบนี้ ถ้าผมต้องการให้ตัว ณ ฉ น ใช้ อุอู พินทุโล แทน  ผมสามารถ นำตัว ฉ ณ น ไปรวมกับ  ฎ ฏ ฐ ซึ่งมีคำสั่งอยู่แล้ว  แค่เพิ่มตัว ณ น ฉ เข้าไป ร่วมกับ ฎ ฏ ฐ ณ น ฉ  ได้เลยมั้ยคับ  และในลักษณะเดียวกัน  ถ้านำ ตัว ช ซ ศ ส ฮ  ฐ  (ตัวที่ออกแบบหางยาวกว่าปกติ) ไปรวมกับ liga ที่สั่งให้หลบ ป ฝ ฟ  (หาวยาวเหมือนกัน)   สามารถทำได้มั้ยคับ ตามนี้น่ะ  ตามที่อธิบาย น่าจะเข้าใจตรงกันนะครับ   ขอคำตอบ อธิบายเพิ่มด้วยครับ  ขอบคุณล่วงหน้านะครับ

ปอมป๋วย

อ้างคำพูดจาก: plypoogun เมื่อ 27 ก.ค. 2018, 21:56 น.
ถ้าเป็นแบบนี้ ถ้าผมต้องการให้ตัว ณ ฉ น ใช้ อุอู พินทุโล แทน  ผมสามารถ นำตัว ฉ ณ น ไปรวมกับ  ฎ ฏ ฐ ซึ่งมีคำสั่งอยู่แล้ว  แค่เพิ่มตัว ณ น ฉ เข้าไป ร่วมกับ ฎ ฏ ฐ ณ น ฉ  ได้เลยมั้ยคับ  และในลักษณะเดียวกัน  ถ้านำ ตัว ช ซ ศ ส ฮ  ฐ  (ตัวที่ออกแบบหางยาวกว่าปกติ) ไปรวมกับ liga ที่สั่งให้หลบ ป ฝ ฟ  (หาวยาวเหมือนกัน)   สามารถทำได้มั้ยคับ

ได้ครับ

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

SMF 2.1.7 © 2026, Simple Machines