ถ้าได้ลองพิมพ์ภาษาไทยใน R Markdown แล้ว knit เป็น
pdf_document
จะพบว่าเกิด error ขึ้น
Error: LaTeX failed to compile something.tex.
การสร้าง PDF จาก R Markdown นั้น จะผ่านกระบวนการที่แปลงเอกสารหลายขั้นตอน ซึ่ง ภาษาไทย จะมีปัญหาที่ขั้นตอน
LaTeX -> PDF
วิธีแก้นั้น จะต้องมีการตั้งค่าต่างๆ ใน LaTeX preamble และ YAML header ของ R Markdown เพื่อให้รองรับกับการใช้งานภาษาไทยได้ โดย R package นี้จึงถูกสร้างขึ้นเพื่อช่วยใน workflow จุดนี้
(ขอบคุณคำแนะนำจาก: คําแนะนําการตั้งค่า LATEX สําหรับใช้ภาษาไทย)
การ install เหล่านี้ทำเพียงครั้งเดียวเท่านั้น
# install.packages("remotes")
::install_github("Lightbridge-KS/thaipdf") remotes
install.packages("tinytex")
# For using R Markdown
::install_tinytex()
tinytex
# Install LaTeX PKG required by `thaipdf`
::tlmgr_install(c(
tinytex"fontspec", "ucharclasses", "polyglossia"
))
โดย LaTeX package ที่จำเป็นสำหรับ type setting ภาษาไทยคือ “fontspec”, “ucharclasses” และ “polyglossia”
วิธีใช้ที่ง่ายที่สุด คือสร้าง R Markdown ที่รองรับภาษาไทยจาก template ที่ package นี้มีให้
ถ้าท่านใช้ RStudio ให้ไปที่
File -> New File -> R Markdown... -> From Template
เลือก template Thai PDF R Markdown หรือ Thai PDF Bookdown จากเมนู
กดปุ่ม OK
จะเปิดไฟล์ R Markdown
template ที่รองรับกับภาษาไทย
จากนั้นกดปุ่ม Knit
(cmd/ctr + shift +
K) ได้เลย จะได้เอกสารเป็น PDF ภาษาไทยที่มี เนื้อหา โค้ด และ กราฟ
อยู่รวมกัน