針對不同的編碼方式,本文給出了幾種解決latex中正文輸入的方法。
編譯環境:MACTeX+TeXstudio
- 採用UTF-8編碼
方式一:使用CJKutf8中文宏包時,編譯器選擇pdflatex, 並在文檔開始前通過命令’\AtBeginDocument{…}'和‘\AtEndDocument{…}’
來調用正文宏包
%!TEX encoding = UTF-8 Unicode
%!TEX TS-program = pdflatex
\documentclass{article}
\usepackage{CJKutf8}
\AtBeginDocument{\begin{CJK}{UTF8}{gbsn}}
\AtEndDocument{\end{CJK}}
\begin{document}
正文內容:
wo 我
\end{document}
編譯結果:
方式二: 使用ctex宏包時,編譯器選擇xelatex。這種方式相比於第一種方式而言更便捷,只須要在導言區聲明宏包ctex, 後面無須再添加命令,直接開始正文即可。
%!TEX encoding = UTF-8 Unicode
%!TEX TS-program = xelatex
\documentclass{article}
\usepackage{ctex}
\begin{document}
正文內容:
wo 我
\end{document}
編譯效果同上。
- 用GBK編碼
方式一:使用CJK中文宏包時,編譯器選擇pdflatex, 並在文檔開始前通過命令
“\AtBeginDocument{…}“和”\AtEndDocument{…}"
來開啓正文支持環境。
%!TEX encoding = GBK
%!TEX TS-program = pdflatex
\documentclass{article}
\usepackage{CJK}
\AtBeginDocument{\begin{CJK}{GB}{gbsn}}
\AtEndDocument{\end{CJK}}
\begin{document}
wo
我
\end{document}
編譯效果同上。
方式二:基本與方式一一致,只是把\AtBeginDocument…“命令換成“\begin{CJK},\end{CJK}”
%!TEX encoding = GBK
%!TEX TS-program = pdflatex
\documentclass{article}
\usepackage{CJK}
\begin{document}
\begin{CJK}{GB}{gbsn}
wo
我
\end{CJK}
\end{document}
編譯效果同上。
Remark:
1. ctex宏包要用xelatex編譯(utf8編碼), CJK, CJKutf8宏包要用pdflatex編譯。
2. CJK宏包可以替換爲CJK, 前者不忽略漢字之間的空格,後者忽略。在使用CJK宏包時,可能需要在“\end{CJK}“命令前加上“\newpage"或者”\clearpage"來避免出錯。
3. 若在“\begin{CJK}{GB}{gbsn}”後加上“\CJKtilde”可以重定義‘~’的間隔,便於中英文混合顯示時兩者之間保持合適的間距。**