การใช้ภาษาไทยบน Latex บน Linux Ubuntu 14.04

เป็นบทความจากคุณ Peerajak Witoonchart ซึ่งมีต้นฉบับอยู่ที่ การใช้ภาษาไทยบน Latex บน Linux Ubuntu 14.04 โดยเวอร์ชันบน ThaiTug ได้มีการปรับปรุงแก้ไขโดยผมเล็กน้อย

 

LaTeX เป็นโปรแกรมที่ทำให้เขียนหนังสือแบบเดียวกับ Microsoft word (admin จริงแล้ว LaTeX typesetting system ส่วน Word เป็น word processing ซึ่งในแง่ของการใช้งานต่างกันพอสมควรครับ)  ส่วนเป็นสมการคณิตศาสตร์สวย มันจัดการเรื่องย่อหน้า บรรทัด ให้เอง ทำให้เราสามารถพุ่งความสนใจไปที่งานเรา  ผู้เขียนไม่ชอบ Microsoft word ในแง่ที่พอเราเพิ่มข้อความด้านบน สมมุติหน้าที่ 3 ของหนังสือเรา เราต้องไปแก้ setting ภาพต่าง ๆ ให้สวยในทุก ๆ หน้าที่เหลือตั้งแต่ 4-5...end ซึ่งถ้า end ของเราคือ 100 หน้า  มันเหนื่อยมาก  Latex ไม่มีปัญหานี้เลย มันจัดการให้อย่างอัตโนมัติ (admin จริง ๆ แล้ว LaTeX เองก็ไม่เหมาะกับเอกสารที่มีรูปภาพเยอะ ๆ เท่าไหร่ เอกสารที่มีรูปภาพเยอะ ๆ เราก็ต้องจัดหน้า เหนื่อยเหมือนกันครับ)    LaTeX  ถูกใช้อย่างแพร่หลายในวงการวิชาการภาษาอังกฤษ   ถ้าเผื่อใครต้องเขียนงานวิจัยตีพิมพ์เป็นภาษาอังกฤษ แล้วเกิดอยากเขียนวิทยานิพนธ์เป็นภาษาไทย แทนที่จะต้องเขียนสมการคณิตศาสตร์ใหม่หมด ใคร ๆ ก็สามารถที่จะหยิบ code ของงานวิจัยที่ตีพิมพ์เป็นภาษาอังกฤษลงมาแปะลงวิทยานิพนธ์ภาษาไทยได้เลย  ด้วยเหตุผลดังกล่าวการใช้ LaTeX ภาษาไทยจึงน่าสนใจ  แต่การจะติดตั้ง LaTeX ให้ใช้งานภาษาไทยได้จะทำอย่างไร?

บทความนี้เขียนถึงวิธีติดตั้ง LaTeX ภาษาไทย บน Linux Mint 17.0 ซึ่งก็คือ Ubuntu 14.04

ขั้นที่ 1 ติดตั้ง LaTeX สำหรั้บ Ubuntu
sudo apt-get install texlive-full
sudo apt-get install texlive-fonts-extra
sudo apt-get install texlive-latex-base

ขั้นที่ 2 ติดตั้ง TexStudio คือ IDE (integrated development environment) ของ LaTeX ที่ใช้ได้ดีกับภาษาไทย (ผู้เขียนพบว่าการใช้ texMaker มันยากกว่า  ผู้เขียนยังคงใช้ texMaker ในภาษาอังกฤษต่อไป)
sudo apt-get install texstudio

ขั้นที่ 3  ดาวน์โหลดฟอนต์ TH Sarabun New
http://www.f0nt.com/release/th-sarabun-new/

ขั้น 4  ติดตั้ง Font
cd /usr/share/fonts/truetype
sudo mkdir TH\ Sarabun\ New
cd TH\ Sarabun\ New/
sudo unzip ~/Downloads/THSarabunNew.zip
fc-cache -fv

ขั้น 5 ดาวน์โหลด Template ของวิทยานิพนธ์ภาษาไทย
http://pioneer.netserv.chula.ac.th/~wdittaya/LaTeX/LaTeXTutorial2016.zip

ขั้น 6 เปิด TexStudio จาก Menu->Office->texStudio

ขั้น 7 ใน ธexStudio เปิด Proposal.tex

ขั้น 8 ไปที่ texStudio->Option->Configure TexStudio->build->default compiler เปลี่ยนจาก PdfLaTeX ให้เป็น XeLaTeX กด Ok

ขั้น 9 กดปุ่ม buiild and view หรือ กด F5

ขั้น 10 พบ error  ให้แก้โดยการลบสองวรรคข้างล่างออกทุกแห่งจากไฟล์ Proposal-text.tex
{\latinfont Xe\LaTeX}
{\latinfont \LaTeX}

ขั้น11 กดF5  ได้ผล Success

 

ขอบคุณ Reference เหล่านี้ที่ทำให้ผู้เขียนใช้งาน LaTeX ในภาษาไทยได้
[1] ฟอนต์และการติดตั้ง http://cholwich.blogspot.com/2012/04/ubuntu-xetex-thsarabunnew.html
[2] วิทยานิพนธ์ภาษาไทย http://pioneer.netserv.chula.ac.th/~wdittaya/

One Response to การใช้ภาษาไทยบน Latex บน Linux Ubuntu 14.04

  1. ขอบคุณครับสำหรับบทความนี้

    ผมใช้ Debian 8, ผมติดตั้ง package ชื่อ texlive-full และ xfonts-thai, ในเครื่องผม
    ไม่มีฟอนท์ THSarabun แต่มี TlwgTypewriter, จากนั้นอ้างอิงไฟล์ Proposal.tex
    แล้วตัดส่วน premable เหลือเพียง:

    \usepackage{fontspec}
    \usepackage{polyglossia}
    \usepackage[Latin,Thai]{ucharclasses}
    \defaultfontfeatures{Mapping=tex-text}
    \setdefaultlanguage{thai}
    \setotherlanguage{english}
    \newfontfamily{\thaifont}[Scale=MatchUppercase,Mapping=tex-tex,ItalicFont={TlwgTypewriter-Oblique},BoldFont={TlwgTypewriter-Bold},BoldItalicFont={TlwgTypewriter-BoldOblique}]{TlwgTypewriter:script=thai}
    \setTransitionTo{Thai}{\thaifont}
    \setTransitionFrom{Thai}{\normalfont}
    \XeTeXlinebreaklocale “th_TH”
    \XeTeXlinebreakskip = 0pt plus 1pt
    \linespread{1.5}

    โดยบรรทัด \newfontfamily จะเห็นว่าผมเพิ่ม option ชื่อ ItalicFont, BoldFont และ
    BoldItalicFont เข้าไป เพราะตอนแรกผมไม่สามารถใช้คำสั่ง \emph, \textbf หรือ
    \textit ได้เลยครับ นอกจากนั้น text ตรง table of contents และบางจุดอื่นๆก็ไม่ bold

    ผมพบ option เหล่านี้จาก:

    https://tex.stackexchange.com/questions/62603/how-to-choose-a-specific-weight-from-a-font-family-using-fontspec-and-xelatex

    จึงบอกต่อ

Leave a Reply

Your email address will not be published. Required fields are marked *