【LaTeX】E喵的LaTeX新手入门教程(6)中文
假期玩得有點(diǎn)兇 ._.前情回顧【LaTeX】E喵的LaTeX新手入門教程(1)準(zhǔn)備篇?
【LaTeX】E喵的LaTeX新手入門教程(2)基礎(chǔ)排版?
【LaTeX】E喵的LaTeX新手入門教程(3)數(shù)學(xué)公式?
【LaTeX】E喵的LaTeX新手入門教程(4)圖表?
【LaTeX】E喵的LaTeX新手入門教程(5)參考文獻(xiàn)、文檔組織先扯一點(diǎn)沒啥用的。。。話說呀在高老頭發(fā)明TeX的時候。。高老頭是美國人嘛,自然是本著能用就好的原則,TeX只支持ASCII碼。這一代算是第一代TeX程序。而中文編碼都是多字節(jié)的,所以要想讓TeX支持中文的話,唯一的方法是檢測一下第一個字節(jié)是不是屬于中文的,然后再往后讀,查表得到輸出的文字。基于這個原理,一位德國人搞出了個宏包叫做CJK,就是干這事兒的。嗯看起來很不錯的樣子,那個年代的人們都喜歡._.嗯到了第二代pdfTeX,對編碼的支持仍然沒有改觀,于是大家還用CJK。然后又過了好久,第三代XeTeX原生支持了Unicode,于是不用分解多字節(jié)編碼了,而且XeTeX又能讀取系統(tǒng)字體,于是就很歡樂了。第四代LuaTeX嘛繼承了優(yōu)良傳統(tǒng),所以我們現(xiàn)在排版中文的話,已經(jīng)完全用不著CJK宏包了._.XeLaTeX中輸出中文XeTeX原生支持Unicode,因此將源文件保存成UTF-8格式就可以了。但是有一點(diǎn)需要注意的是,雖然中文被識別了,但是XeTeX沒有默認(rèn)的中文字體,所以輸出的中文都看不見._.為了中文能夠顯示,我們就得指定一種字體。XeTeX是可以調(diào)用系統(tǒng)字體的,但是具體能用哪些,我們得先看一下。查看字體的方法是:fc-list嗯截個圖它長這樣的._.在第一個冒號和第二個冒號之間的就是字體名稱了,用逗號分隔的,哪個都可以用,比如Adobe Song Std和Adobe 宋體 Std調(diào)用的是同一種字體的喵。由于XeTeX原生調(diào)用字體的方法比較復(fù)雜,這里我們使用XeLaTeX的fontspec和xeCJK宏包來完成XeLaTeX中中英文字體的設(shè)定。提示:xeCJK宏包已經(jīng)包含了fontspec宏包,因此只用xeCJK宏包即可的喵0w0所以我們需要在導(dǎo)言區(qū)加一句\usepackage{xeCJK}指定中文字體指定中文字體很簡單啦。\setCJKmainfont{字體名}
\setCJKmonofont{字體名}一個設(shè)置主字體族,一個設(shè)置等寬字體族。如果想使用新的字體族可以用\setCJKfamilyfont{族名}{字體名}它們還有很多豐富的選項,具體可以看文檔。。。不過xeCJK是國人寫的宏包,所以它的文檔是中~文~的喵>//< 一口氣看五頁,不費(fèi)勁!指定英文字體\setmainfont{字體名}
\setmonofont{字體名}跟上面似乎一樣的說._.由于xeCJK宏包的工作,你可以分別為中文和英文指定不同的字體,十分炫酷的喵。如果我不用XeTeX的話。。那你就杯具了。._.
._.
._.
._.
._.
._.
._.
._.
._.
._.
._.
._.
._.
._.
._.
._.
._.
._.
._.
._.
._.
._.
._.
._.嘛。。通用的解決方案還是有的喵><尾偉大的ctex文檔類/宏包xeCJK是只有XeLaTeX才能用的宏包,TeX和pdfTeX表示你這是紅果果的歧視啊,你看今年春晚都反歧視了是不,總得搞出個通用的套路才行。于是就有了ctex文檔類和宏包的喵(似乎反了,ctex貌似早于XeTeX的喵._.管它呢),只需輕輕一用,從此跨越平臺過上xing福生活不是夢想。它的原理是檢測一下引擎,如果是XeTeX就用新套路,不是就用老套路的喵,當(dāng)然做了很多其他工作,具體可以看文檔,也是中~文~的喵>//<ctex的使用方法是:
- 使用ctex文檔類
- 使用ctex宏包
使用ctex文檔類以前我們說過LaTeX內(nèi)置了一些文檔類,像article什么什么的十分好用之類的。有了CTeX你就可以拋棄原來的文檔類了._.ctex文檔類直接支持中文,只需要用ctex給出的文檔類就可以了。article?→?ctexart
report?→?ctexrep
book?→?ctexbook換一換就好了的喵。使用ctex宏包\usepackage{ctex}這還用我說么._.小提示ctex的默認(rèn)字體是Windows自帶的那個坑爹宋體,同時還會用到Windows自帶的坑爹黑體和坑爹楷體還有坑爹仿宋體,這些字體是有版權(quán)的,所以各大TeX發(fā)行版是不帶的O//O 因此如果你用Linux,確保安裝一下它們的喵。下期預(yù)告頁面設(shè)置,指定一下頁邊距頁眉頁腳什么的喵。
from:?http://blog.renren.com/blog/339175058/895170050?bfrom=01020110200
總結(jié)
以上是生活随笔為你收集整理的【LaTeX】E喵的LaTeX新手入门教程(6)中文的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 【LaTeX】E喵的LaTeX新手入门教
- 下一篇: 从青年基金到面上项目