Latex中文utf-8編碼的三種方式

咱們知道Latex通常用CJK和CTEX宏包支持中文編輯,CJK和CTEX的默認編碼是GBK,而windows下的默然編碼就是GBK,所以CJK和CTEX不須要特殊配置就能夠直接支持中文Latex編譯,只須要用GBK編碼保存文件便可。可是若是把文件的字符編碼換成如今更加廣泛的utf-8的話,應該怎麼操做呢?在這裏有3種方式可使用。windows

 

一、CJKutf8

CJK有兩個基本宏包:CJK和CJKutf8,其中後者面向utf-8編碼,其通常使用方法以下:字體

\usepackage{CJKutf8}
\begin{document}
\begin{CJK}{UTF8}{<font>}
 ...
\end{CJK}
\end{document}

 

font爲簡體中文字體,CJK自帶的utf-8簡體字體有gbsn(宋體)和gkai(楷體)。如下代碼是一個簡單的例子(必定要將tex文件保存成utf-8格式):編碼

%test.tex
\documentclass{article} \usepackage{CJKutf8} \begin{document} \begin{CJK}{UTF8}{gbsn} 這是一個CJKutf8的例子,使用的字體是gbsn。 \end{CJK} \end{document}

用pdflatex編譯tex文件,便可獲得輸出結果。spa

 

二、CTEX的UTF8選項

上面的CJKutf8只提供了兩種字體,可選擇的餘地過小,咱們能夠直接用UTF8選項使CTEX支持utf-8編碼,利用CTEX豐富的字體和中文設置能夠更好地編輯Latex中文文本,其語法格式爲:操作系統

\documentclass[UTF8]{article}
\usepackage{CTEX}
\begin{document}
...
\end{document}

或者,直接使用ctexartcode

\documentclass[UTF8]{ctexart}
\begin{document}
...
\end{document}

 

如下代碼是一個簡單的例子(一樣把tex文件保存成utf-8格式):blog

% ctex_test.tex
\documentclass[UTF8]{article}
\usepackage{CTEX}
\begin{document}
這是一個CTEX的utf-8編碼例子,{\kaishu 這裏是楷體顯示},{\songti 這裏是宋體顯示},{\heiti 這裏是黑體顯示},{\fangsong 這裏是仿宋顯示},{\lishu 這裏是隸書顯示},{\youyuan 這裏是幼圓顯示}。
\end{document}

 

用pdflatex編譯tex文件:pdflate ctex_test.tex,便可獲得以下輸出結果,utf-8

 

三、xelatex編譯

XeTeX是一種使用Unicode的TeX排版引擎,它原生的支持Unicode,並默認其輸入文件爲utf-8編碼。XeTeX能夠在不進行額外配置的狀況下直接使用操做系統中安裝的字體。XeLaTeX是使用LaTeX的排版引擎,也有上述XeTeX的優勢,命令下直接使用xelatex ***.tex就會產生對應的PDF文件。如下是一個簡單的xelatex編譯ctex的例子(一樣把tex文件保存成utf-8格式):it

% xelatex_test.tex
\documentclass{article}
\usepackage{CTEX}
\begin{document}
這是一個CTEX的utf-8編碼例子,{\kaishu 這裏是楷體顯示},{\songti 這裏是宋體顯示},{\heiti 這裏是黑體顯示},{\fangsong 這裏是仿宋顯示}。
\end{document}

 

明眼的同窗一下就發現了,這貨跟上面第2條中ctex的代碼相比,就少了一個UTF8選項啊!額,表面看是這樣的,可是若是若是直接把xelatex_test.tex用pdflatex編譯,系統就會報錯。這是由於不加UTF8選項,pdflatex默然按照GBK編碼處理tex文件,而這個文件咱們是用utf-8編碼的,這樣就會形成解碼失敗。這裏直接用xelatex編譯,就會編譯成功,由於xelatex的默認輸入文件是utf-8編碼。切換到tex文件所在目錄,直接用xelatex編譯tex文件:xelatex xelatex_test.tex,便可獲得以下輸出結果,
字符編碼

相關文章
相關標籤/搜索