fontenc, inputenc, fontspec และแพ็กเกจฟอนต์
ไม่จำเป็นต้องใช้ inputenc และ fontenc ทั้งสองถูกยอมรับแต่ไม่มีผล เพราะซอร์สถูกอ่านเป็น UTF-8 เสมอ ในเอกสารทั่วไป ฟอนต์ถูกกำหนดตายตัวเป็น Latin Modern และ New Computer Modern Math \setmainfont ของ fontspec และแพ็กเกจอย่าง times หรือ libertine ถูกละเว้น มีเพียงการสลับเป็นฟอนต์ไม่มีเชิงด้วย \familydefault (จะใช้ร่วมกับ helvet ก็ได้) ที่ใช้ได้
แพ็กเกจเหล่านี้ทำอะไร
inputencบอก pdfLaTeX ว่าไฟล์ซอร์สเข้ารหัสแบบใด\usepackage[utf8]{inputenc}เคยจำเป็นสำหรับเครื่องหมายเสริมสัทอักษรที่พิมพ์โดยตรงก่อนปี 2018 ปัจจุบัน LaTeX อ่าน UTF-8 เป็นค่าเริ่มต้นfontencเลือกการเข้ารหัสฟอนต์\usepackage[T1]{fontenc}ให้ pdfLaTeX ใช้ฟอนต์ที่มีตัวอักษรพร้อมเครื่องหมายเสริมในตัว ซึ่งช่วยให้ตัดคำได้ดีขึ้นและคัดลอกข้อความจาก PDF ได้ดีขึ้นfontspec(XeLaTeX และ LuaLaTeX) โหลดฟอนต์ OpenType ใดก็ได้ที่ติดตั้งไว้:\setmainfont{...},\setsansfont{...},\setmonofont{...},\newfontfamily- แพ็กเกจฟอนต์อย่าง
lmodern,times,mathptmx,helvet,libertineหรือnewtxtextเปลี่ยนเอกสาร pdfLaTeX ไปใช้แบบอักษรอื่น
สิ่งที่ใช้ได้ที่นี่
| ฟีเจอร์ | ใน Scissor LaTeX | หมายเหตุ |
|---|---|---|
| ซอร์ส UTF-8 ที่มี ä, é, ł อักษรกรีก ซีริลลิก CJK ... | ใช้ได้ | ใช้ได้เสมอ ไม่ว่าจะมี inputenc หรือไม่ |
\usepackage[utf8]{inputenc}, \usepackage[T1]{fontenc}, lmodern | ถูกละไว้ | ถูกยอมรับ ไม่ต้องทำอะไร |
\renewcommand{\familydefault}{\sfdefault} | ใช้ได้ | เนื้อความเป็น Latin Modern Sans |
helvet หรือ tgheros ร่วมกับบรรทัดด้านบน | ใช้ได้ | ฟอนต์ไม่มีเชิงเป็น TeX Gyre Heros ซึ่งคล้าย Helvetica |
sfmath | ใช้ได้ | สูตรเป็นฟอนต์ไม่มีเชิง |
\texttt{...}, \ttfamily | ใช้ได้ | Latin Modern Mono |
\textbf, \textit, \emph | ใช้ได้ | |
\textsc{...} | ใช้ได้บางส่วน | ในฟอนต์ Latin Modern ที่เป็นค่าเริ่มต้นจะเป็นตัวอักษรธรรมดา เมื่อใช้ helvet และในเลย์เอาต์งานประชุมวิชาการ (ยกเว้น LNCS ซึ่งใช้ Latin Modern) จะเป็นตัวพิมพ์ใหญ่ขนาดเล็กจริง |
\textsf{...}, \sffamily ภายในข้อความ | ถูกละไว้ | ข้อความยังเป็นฟอนต์มีเชิง |
fontspec: \setmainfont, \setsansfont, \setmonofont | ถูกละไว้ | ถูกยอมรับในส่วนนำ ไม่มีผล |
\newfontfamily\name{Font} | ไม่รองรับ | ถูกข้ามพร้อมข้อความแจ้ง และชื่อฟอนต์ถูกพิมพ์ออกมา |
times, mathptmx, palatino, libertine, newtxtext, charter ... | ถูกละไว้ | ข้อความยังเป็น Latin Modern |
\fontsize{14}{16}\selectfont | ใช้ได้ | ใช้ขนาดมาตรฐานที่ใกล้ที่สุดระหว่าง 5 ถึง 144 pt ระยะบรรทัดปรับตามขนาด |
\fontfamily{...}\selectfont | ถูกละไว้ | ไม่มีข้อความแจ้ง ข้อความคงฟอนต์เดิม |
\small, \large, \Huge ... | ใช้ได้ | ยกเว้นในเลย์เอาต์ของงานประชุมวิชาการและวารสาร ซึ่งใช้ขนาดของตัวเอง |
unicode-math: \setmathfont | ถูกละไว้ | ฟอนต์คณิตศาสตร์ยังเป็น New Computer Modern Math |
unicode-math: \symbf, \symit ในสูตร | ไม่รองรับ | สูตรแสดงเป็นสีแดง ให้ใช้ \mathbf, \boldsymbol หรือ bm |
ขนาดฟอนต์ของเนื้อความมาจากตัวเลือกของคลาส (10pt, 11pt หรือ 12pt) ดู เลย์เอาต์หน้า
ตัวอย่าง
บรรทัดในส่วนนำที่เอกสารจำนวนมากใช้ขึ้นต้นถูกยอมรับและไม่เปลี่ยนแปลงอะไร เครื่องหมายเสริมที่พิมพ์โดยตรงใช้ได้ไม่ว่าจะมีบรรทัดเหล่านี้หรือไม่:
inputenc, fontenc และ lmodern ถูกยอมรับ
\documentclass{article}
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\usepackage{lmodern}
\begin{document}
Hans Mustermann bestellt Crème brûlée, Smørrebrød und Pierogi z
kapustą. \texttt{Monospaced}, \textbf{bold} and \textit{italic}
work as usual.
\end{document}fontspec โหลดได้โดยไม่มีข้อผิดพลาด แต่ข้อความยังเป็น Latin Modern:
\setmainfont ไม่มีผล
\documentclass{article}
\usepackage{fontspec}
\setmainfont{TeX Gyre Pagella}
\begin{document}
This paragraph would be set in Pagella by XeLaTeX or LuaLaTeX.
Here it stays in Latin Modern, the default font.
\end{document}การสลับฟอนต์เพียงแบบเดียวที่ใช้ได้: ทั้งเอกสารเป็นฟอนต์ไม่มีเชิง
ฟอนต์ไม่มีเชิงด้วย \familydefault และ sfmath
\documentclass{article}
\usepackage{helvet}
\usepackage{sfmath}
\renewcommand{\familydefault}{\sfdefault}
\begin{document}
\section{Results}
John Doe measured $v = 44\,\mathrm{m/s}$, which matches the
estimate $v \approx \sqrt{2 g h}$.
\end{document}ความเข้ากันได้
- จากการติดตั้ง TeX มาที่นี่: ข้อความและสูตรยังคงอยู่ในฟอนต์ Latin Modern ฟอนต์ที่ตั้งด้วย
fontspecหรือแพ็กเกจฟอนต์ไม่ถูกใช้ และเอกสารที่เขียนสำหรับ XeLaTeX จัดเรียงพิมพ์ได้โดยไม่ต้องแก้ไข - จากที่นี่ไปยังการติดตั้ง TeX: เอกสารคอมไพล์ได้ด้วย pdfLaTeX, XeLaTeX หรือ LuaLaTeX ตามที่แพ็กเกจของเอกสารต้องการ และฟอนต์ที่เลือกไว้จะมีผล
คู่มือฉบับเต็มอยู่บน CTAN: fontspec fontenc inputenc และ unicode-math ดูเพิ่มเติม ภาษาและฟอนต์อื่น ๆ
คำถามและคำตอบ
ต้องใช้ \usepackage[utf8]{inputenc} หรือไม่
ที่นี่ไม่ต้อง ซอร์สถูกอ่านเป็น UTF-8 เสมอ การคงบรรทัดนี้ไว้ไม่มีผลเสีย และการติดตั้ง TeX รุ่นเก่ายังต้องใช้
จะใช้ Times New Roman หรือ Arial ได้อย่างไร
ในเอกสารทั่วไปใช้ไม่ได้ ฟอนต์ของข้อความเป็น Latin Modern และสลับได้เพียงเป็นฟอนต์ไม่มีเชิงด้วย \renewcommand{\familydefault}{\sfdefault} ซึ่งเมื่อใช้ร่วมกับ \usepackage{helvet} จะได้ TeX Gyre Heros ที่คล้าย Helvetica เทมเพลตงานประชุมวิชาการ มีฟอนต์ของตัวเอง: TeX Gyre Termes (คล้าย Times) สำหรับส่วนใหญ่ และ Libertinus สำหรับ ACM
fontspec ใช้ได้ใน Scissor LaTeX หรือไม่
โหลดได้โดยไม่มีข้อผิดพลาด เอกสาร XeLaTeX จึงเปิดและจัดเรียงพิมพ์ได้ แต่ \setmainfont และการตั้งค่าฟอนต์อื่น ๆ ถูกละเว้น
ทุกตัวอย่างในหน้านี้จัดหน้าโดย Scissor LaTeX ขณะสร้างเว็บไซต์ อัปเดตล่าสุด 2026-11-07