精品伊人久久大香线蕉,开心久久婷婷综合中文字幕,杏田冲梨,人妻无码aⅴ不卡中文字幕

打開APP
userphoto
未登錄

開通VIP,暢享免費電子書等14項超值服

開通VIP
真正的Linux下的中文LATEX解決方案: CTeX + xeCJK + XeTEX

真正的Linux下的中文LATEX解決方案: CTeX + xeCJK + XeTEX

lins05 
mysnowls@163.com

August 6, 2011

摘要

Linux下用LaTeX很方便,但是要解決中文的問題就不怎么方便,因 為TeX的字體系統很難自己解決。

Windows下可以使用配置好的CTeX套裝1 , 現在本文中就簡介如何在Linux下配置CTeX,以方便寫中文文檔。

目錄

老的方法 
1.1 缺乏可用的字體 
1.2 默認的格式不符合中文排版要求 
1.3 不能滿足中文的其他要求 
CTeX和xeCJK 
2.1 字體 
2.2 中文版式 
2.3 CTeX和xeCJK的關系 
簡單的例子 
注意事項 
4.1 如何安裝 
4.2 推薦字體 
4.3 其他設置

1 老的方法

LATEX的CJK宏包,經過實踐證明,確實是一個可行且實用的中文LATEX解決方 案。但是它有幾點不足:

1.1 缺乏可用的字體

LATEX下的中文字體很少,Linux下的字體更少。因為TEX的字體系統比較復雜,使 得用戶想自己生成字體非難困難,門檻很高,并且管理不方便。

1.2 默認的格式不符合中文排版要求

CJK宏包僅僅解決了中文字體的問題,但是它默認的格式是英文的排版方式(CJK的 作者是德國人)。

因此,一般用戶都需要自己設置種種版式:首先縮進,行距和段距。中英文混排 時的字距,等等。

1.3 不能滿足中文的其他要求

比如生成目錄時,中文文檔應該叫“目錄”,而不是”CONTENTS”。類似的還有“ 附錄”、“表格索引”等等。

CTeX宏包和xeCJK宏包的組合相當完美的解決了這些問題。

2 CTeX和xeCJK

2.1 字體

xeCJK宏包所使用的XeTeX引擎,是從MacOS移植到Linux和Windows上的。它最大 的特點是從底層就具備對unicode的支持,以及可以直接調用系統中已有的字 

這意味著將LaTeX用戶從和字體相關的一大推問題中解決出來了。只要系統中安裝 了中文字體,那么使用XeTeX就能使用這些字體。

xeCJK是必須使用XeTeX引擎的,這也是為什么標題叫做CTeX + xeCJK + XeTeX的原因。

2.2 中文版式

CTeX的開發者們是值得所有的LaTeX用戶感激的。使用CTeX的各個documentclass, 我們就無須再手動地設置版式,因為CTeX的默認設置就是最適合中文文檔的:行首 縮進兩個漢字;行距和段距的適當調整,中英文的混排時的字距,都是適合中文版式 的。

此外,CTeX將其他應該為中文文檔考慮的地方大都包括了進去:”CONTENTS”改為 了“目錄”,”Index”改為了”索引“,等等。

2.3 CTeX和xeCJK的關系

二者都是宏包,但是,CTeX是一個上層的中文LaTeX宏包。它的下層是可選的,可 以支持xeCJK、CJK,甚至更老的CCT宏包。對于不同的下層宏包它進行不同的設 置。xeCJK完全可以脫離CTeX使用,但是這樣你雖然不用擔心字體,同樣也不能享 受到CTeX的中文版式。

3 簡單的例子

例子總是最直觀的。我們以一個最簡單的例子來說明。

%---------------------------------------  
\documentclass[a4paper]{article}  
\usepackage[adobefonts]{ctex}  
\setCJKmainfont{SimSun}  
%---------------------------------------  
\author{小明}  
\title{記一次春游}  
\date{\today}  
%---------------------------------------  
\begin{document}  
\pagestyle{plain}  
\maketitle  
%---------------------------------------  

昨天,老師帶我們三年級二班的小朋友們全體去郊外春游。我非常高興。 
們在郊外看到了\textbf{老虎、獅子和熊貓}。 
長大了要\textsl{保護動物}。  

天,老師要教我們學習\LaTeX 了,大家都非常激動。  
\end{document}  


Figure 1: 小明的日記


4 注意事項

4.1 如何安裝

Linux下安裝這三者的最方便的方法是安裝texlive系列。texlive是一整套TEX工具和引 擎的集合,包括了LaTeX等種種工具和一些相關的程序、宏包,不同的發行版里會把 整個texlive分為不同的軟件包,諸如texlive-xetex、texlive-xecjk、texlive-ctex。用包 管理軟件進行搜索,不難找到應該安裝的軟件包。

當然另一種方式是使用texlive的安裝DVD或者在線安裝 工具。筆者使用的slackware發行版里沒有提供texlive的軟件 包2 ,因此是從中科 大的CTAN鏡像3 下 載的texlive2011DVD進行安裝的。具體的安裝過程可以讀光盤里的README文 件。

由于texlive是一個TeX軟件的大集合。因此它有一個專門的包管理程序:tlmgr。 這個程序類似debian下的apt-get,提供了搜索、查詢、安裝、卸載、升級各個tex軟件 包的功能。在DVD安裝版中有這個軟件,一般的發行版應該不會提供這個程 序4 。

4.2 推薦字體

一般使用的字體有三套。

一是在Linux下常用的文泉驛字體,但它不適合寫正式的文檔。

二是在網上下載Adobe的四套字體,分別是宋體、仿宋、黑體和楷體。

三是可以拷貝Window下的字體。但是這涉及到版權問題。如果確實想用,可以在 百度上搜索“方正楷體”、“方正宋體”,等等。

使用字體的方法如下:

先拷貝字體到/usr/share/fonts/下的相應的子目錄中,然后運行"fc-cache"更 新系統的字體緩存。

在xeCJK中,設置主字體是使用\setCJKmainfont命令(因為我們的CTeX會調 用xeCJK,因此可以使用xeCJK中的命令)。

具體的字體名字可以用"fc-list :zh-cn"命令來查看。

4.3 其他設置

1 如果你的系統中沒有CTeX要求的全套六種字 體5 , 那么,一定要在\usepackage{ctex}的選項中加上adobefonts這一條。

這樣一來CTeX會用相應的Adobe字體去代替它要求的六套字體。不然有時會出現 找不到字體的現象,尤其是使用特殊字體的時候,比如在verbtim環境中。

2 一般情況下,中文文檔中是不使用斜體的。因此在CTeX調用xeCJK時,默認是 不使用斜體的,所以你就算在文檔中使用\textsl{},最終也不會產生任何斜體效 果。

如果你真的要用,就要修 改/ctex/engine/ctex-xecjk-engine.def6 中 的一行:

\RequirePackage[BoldFont,normalindentfirst]{xeCJK}

改為:

\RequirePackage[BoldFont,slantfont,normalindentfirst]{xeCJK}

3 使用CTeX的兩種方法

第一種是直接使用CTeX的文檔類。

\documentclass[adobefonts]{ctexart}

第二種是使用CTeX包。

\usepackage[adobefonts]{ctex}

二者的區別是:當通過\usepackage來使用CTeX包時,產生的仍然 是”CONTENTS”、”INDEX”,而不是“目錄”、“索引”。

當然,如果要用其他類作為文檔類,就必須使用第二種方式了,最典型就是 用beamer類做幻燈片的時候了。

這時,如果要使用中文的“目錄”、“摘要”等樣式,可以使用這兩條命 令:

\renewcommand*\contentsname{目錄}  
\renewcommand*\abstractname{摘要}

還有一個更折騰的方法。修改一下ctex/ctex.sty文件,在其中添加一 句

\input{ctex-caption.def}

這樣就一直保持中文的名稱了。

本站僅提供存儲服務,所有內容均由用戶發布,如發現有害或侵權內容,請點擊舉報
打開APP,閱讀全文并永久保存 查看更多類似文章
猜你喜歡
類似文章
LaTeX中文排版(使用XeTeX)
LaTeX 中的排版細節——中文渲染與圖文混排
TeX、LaTeX、TeXLive 小結
全面總結如何在 LaTeX 中使用中文 (2020 最新版)
ubuntu 下安裝 texlive 并設置 ctex 中文套裝
轉!最靠譜!《TeX Live 2010 安裝手記》
更多類似文章 >>
生活服務
分享 收藏 導長圖 關注 下載文章
綁定賬號成功
后續可登錄賬號暢享VIP特權!
如果VIP功能使用有故障,
可點擊這里聯系客服!

聯系客服

主站蜘蛛池模板: 吴堡县| 乌兰浩特市| 讷河市| 新邵县| 正镶白旗| 普洱| 东兴市| 滦南县| 潮州市| 台东市| 淅川县| 彭阳县| 满城县| 卢氏县| 巫山县| 东乡族自治县| 房山区| 集安市| 舞钢市| 清镇市| 嘉义市| 通城县| 冷水江市| 思茅市| 柞水县| 延庆县| 于田县| 宽甸| 广平县| 苍南县| 蒙阴县| 滨海县| 绍兴市| 调兵山市| 遵义市| 唐河县| 长岭县| 石河子市| 米泉市| 汉沽区| 靖远县|