ข้ามไปเนื้อหาหลัก

สระและวรรณยุกต์ลอยผิดตำแหน่งใน Adobe แก้ยังไง

อัปเดต 7 กันยายน 2569

ถ้าพิมพ์ภาษาไทยใน Photoshop หรือ Illustrator แล้วเจอว่าสระบนกับวรรณยุกต์ลอยสูงเกินไป ซ้อนทับกัน หรือเลื่อนไปอยู่ผิดตำแหน่ง โดยเฉพาะกับคำที่มีวรรณยุกต์ซ้อนสระอย่าง "ที่" "เพื่อ" "ผู้" — ปัญหานี้เกือบทั้งหมด ไม่ได้เกิดจากตัวฟอนต์ และการเปลี่ยนไปใช้ฟอนต์อื่น มักไม่ช่วยอะไร

ทำไมถึงเกิด

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

แต่โปรแกรมจะทำตามคำสั่งเหล่านั้นก็ต่อเมื่อใช้ ตัวจัดวางข้อความ (text engine) ที่รองรับ — และค่าเริ่มต้นของ Adobe ในเครื่องส่วนใหญ่ไม่ได้ตั้งไว้แบบนั้น ตัวจัดวาง มาตรฐานวางตัวอักษรเรียงกันไปทีละตัวโดยไม่อ่านคำสั่งในฟอนต์เลย ผลคือสระกับวรรณยุกต์ ถูกวางที่ตำแหน่งกลาง ๆ ซึ่งถูกบ้างผิดบ้างแล้วแต่คำ

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

Adobe Photoshop

ตั้งที่ระดับโปรแกรม ทำครั้งเดียวใช้ได้กับทุกไฟล์หลังจากนั้น

  1. เปิดเมนู Edit > Preferences > Type
  2. ในหัวข้อที่เกี่ยวกับตัวเลือกภาษา ให้เลือก Middle Eastern and South Asian
  3. กด OK แล้ว ปิดแล้วเปิดโปรแกรมใหม่
  4. กลับมาที่พาเนล Paragraph จะมีตัวเลือกตัวจัดวางเพิ่มขึ้นมาให้เลือก

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

Adobe Illustrator

ขั้นตอนเดียวกับ Photoshop

  1. เปิด Edit > Preferences > Type แล้วเลือก Middle Eastern and South Asian
  2. เปิดโปรแกรมใหม่
  3. ที่พาเนล Paragraph เลือก Middle Eastern & South Asian Composer
  4. เลือกระหว่าง Single-line Composer กับ Every-line Composer ตามงาน

Single-line ตัดบรรทัดทีละบรรทัด เร็วกว่าและคาดเดาผลได้ง่ายกว่า เหมาะกับพาดหัวและ ข้อความสั้น ส่วน Every-line มองทั้งย่อหน้าพร้อมกันแล้วเกลี่ยช่องไฟให้สม่ำเสมอ เหมาะกับข้อความยาวเป็นย่อหน้า แต่การแก้คำเดียวอาจทำให้บรรทัดอื่นขยับตามได้

Adobe InDesign

InDesign ต่างจากสองตัวข้างบน — ไม่ต้องแก้ Preferences เลย ตัวจัดวางที่ต้องใช้ มีอยู่แล้วในโปรแกรม แค่ยังไม่ได้ถูกเลือก

  1. เลือก text frame ที่ต้องการ (หรือเลือกทั้งหมดด้วย Ctrl/Cmd + A)
  2. เปิดพาเนล Paragraph แล้วกดเมนูมุมขวาบนของพาเนล
  3. เลือก Adobe World-Ready Paragraph Composer หรือ Adobe World-Ready Single-line Composer

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

โปรแกรมอื่นในชุด Adobe

หลักการเดียวกันหมด — มองหาตัวเลือกที่มีคำว่า World-Ready หรือ Middle Eastern and South Asian แล้วเปิดใช้ ชื่อเมนูต่างกันไปตามโปรแกรมและรุ่น แต่เป็นสิ่งเดียวกัน

ถ้าตั้งครบแล้วยังเพี้ยนอยู่

ถ้าตั้งค่าถูกต้องแล้วแต่ยังผิดตำแหน่งอยู่ ให้ไล่ตรวจตามนี้

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

Microsoft Office เป็นคนละเรื่อง

Office ไม่มีตัวจัดวางแบบเดียวกับ Adobe ให้เลือก อาการที่พบบ่อยกว่าคือ ช่องไฟระหว่าง ตัวอักษร (kerning) ไม่ทำงาน ซึ่งแก้ได้ที่ คลิกขวาบนข้อความ > Font > แท็บ Advanced แล้วติ๊ก Kerning for fonts ก่อนกด OK

โดยทั่วไปไฟล์ .otf ให้ผลกับ Office ดีกว่า .ttf เพราะคำสั่งช่องไฟถูกเก็บในรูปแบบที่ Office อ่านได้ตรงกว่า


ฟอนต์ไทยทุกชุดบน typedee.com ทำคำสั่งกำกับตำแหน่งสระและวรรณยุกต์มาครบ — เลือกดูฟอนต์ทั้งหมด หรือ พิมพ์ทดสอบด้วยข้อความของคุณเอง ได้ในหน้าฟอนต์ ทุกหน้าก่อนตัดสินใจ