国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁(yè) > 系統(tǒng) > Linux > 正文

Linux下的TeXlive 2015 中文問(wèn)題

2024-06-28 13:19:31
字體:
來(lái)源:轉(zhuǎn)載
供稿:網(wǎng)友
linux下的TeXlive 2015 中文問(wèn)題

Update: 今日突然發(fā)現(xiàn),我的xeLaTeX編譯生成的pdf中文字在TeXMaker內(nèi)置viewer、evince下查看均無(wú)法顯示中文,中文字顯示為空白,英語(yǔ)正常;但Firefox、Chrome瀏覽器打開(kāi)是中文顯示正常。

據(jù)說(shuō)可實(shí)現(xiàn)Linux下TeXlive中英混排的方法:

1. 本方法來(lái)自http://seisman.info/mini-template-for-xeCJK.html

xeCJK + xeLaTeX,這大概是目前為止最優(yōu)的中文解決方案。

/documentclass{article}/usepackage{xeCJK}

xeCJK將默認(rèn)使用TeXLive自帶的Fandole字體。要能夠編譯通過(guò),需要將TeXLive自帶的中文字體安裝到系統(tǒng)中,最簡(jiǎn)單的辦法是在~/.fonts目錄下建一個(gè)軟鏈接:

ln -s /opt/texlive/2014/texmf-dist/fonts/opentype/public/fandol ~/.fonts/

然后使用xelatex命令編譯foo.tex即可。

2.本方法來(lái)自http://www.CUOXin.com/lienhua34/p/3675027.html。相比方法1,這大概是較舊的TeXlive實(shí)現(xiàn)中英文混排的的方式(?)。

在一份文檔foo.tex中:

/documentclass{ctexart}/begin{document}你好,/LaTeX!/end{document}

如果直接編譯會(huì)出現(xiàn)錯(cuò)誤:

!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! fontspec error: "font-not-found"!! The font "SimSun" cannot be found.!! See the fontspec documentation for further information.!! For immediate help type H <return>.!...............................................l.5{SimSun}?

這 是 因 為 ctex 宏 包 默 認(rèn) 使 用 的 是 windows 系 統(tǒng) 的 字 體, 而 在Linux下 沒(méi) 有 windows 系 統(tǒng) 的 字 體或者字體名字已經(jīng)不是SimSun, 所 以 這 里 報(bào) 了 找 不 到 宋 體(SimSun)的錯(cuò)誤。

ctex 宏包提供了三個(gè)字體選項(xiàng):nofonts、adobefonts 和 winfonts,默認(rèn)使用的是 winfonts。

如果在 tex 源文件中沒(méi)有使用其他選項(xiàng)修改字體配置,則需要操作系統(tǒng)中安裝有中文 Windows 操作系統(tǒng)自帶的四種 TrueType 字體:宋體(simsun)、黑體(simhei)、仿宋體(simfang)、楷體(simkai)。如果使用 adobefonts 選項(xiàng),則需要操作系統(tǒng)中安裝有 Adobe 公司的四款 OpenType 字體:Adobe 宋體、Adobe 黑體、Adobe 仿宋、Adobe 楷體。

eg如下:

思路一:讓cTeX使用 nofonts 選項(xiàng),然后通過(guò) CJK 中文方案將系統(tǒng)自帶的中文字體設(shè)置成中文的默認(rèn)字體。

  第一步:通過(guò)命令 fc-list :lang-zh 查看 Ubuntu 系統(tǒng)自帶的中文字體

  $ fc-list :lang-zh | sort  AR PL UKai CN:style=Book  AR PL UKai HK:style=Book  AR PL UKai TW MBE:style=Book  AR PL UKai TW:style=Book  AR PL UMing CN:style=Light  AR PL UMing HK:style=Light  AR PL UMing TW MBE:style=Light  AR PL UMing TW:style=Light  ...  文泉驛等寬微米黑,文泉驛等寬微米黑,WenQuanYi Micro Hei Mono:style=Regular  文泉驛等寬正黑,文泉驛等寬正黑,WenQuanYi Zen Hei Mono:style=Regular  文泉驛點(diǎn)陣正黑,文泉驛點(diǎn)陣正黑,WenQuanYi Zen Hei Sharp:style=Regular  文泉驛微米黑,文泉驛微米黑,WenQuanYi Micro Hei:style=Regular  文泉驛正黑,文泉驛正黑,WenQuanYi Zen Hei:style=Regular

  第二步:在文檔開(kāi)頭即可使用如下字體設(shè)置:

  

  /documentclass[nofonts]{ctexart}  /setCJKmainfont[ItalicFont={AR PL UKai CN}]{AR PL UMing CN} %設(shè)置中文默認(rèn)字體  /setCJKsansfont{WenQuanYi Zen Hei} %設(shè)置文泉驛正黑字體作為中文無(wú)襯線(xiàn)字體  /setCJKmonofont{WenQuanYi Zen Hei Mono} %設(shè)置文泉驛等寬正黑字體作為中文打字機(jī)字體  /begin{document}  你好,/LaTeX!  /end{document}

  然后即可使用xeLateX編譯。

  通過(guò) setCJKmainfont 等命令我們可以使用 texlive 處理中文字符了,但是要在每個(gè)中文文檔都寫(xiě)這么一段命令,確實(shí)是個(gè)煩人的事情。

  于是有了思路二。

思路二:通過(guò)將上述設(shè)置字體的這段命令寫(xiě)入到自定義的宏包文件 mylinuxfonts.sty 中,然后在文檔中以命令 /usepackage{mylinuxfonts} 使用這個(gè)自定義宏包即可。

新建mylinuxfonts.sty,內(nèi)容參考如下:

  

  /PRovidesPackage{mylinuxfonts}  /setCJKmainfont[ItalicFont={AR PL UKai CN}]{AR PL UMing CN} %設(shè)置中文默認(rèn)字體  /setCJKsansfont{WenQuanYi Zen Hei} %設(shè)置中文無(wú)襯線(xiàn)字體為文泉驛正黑  /setCJKmonofont{WenQuanYi Zen Hei Mono} %設(shè)置中文打字機(jī)(等寬)字體為文泉驛正黑  /endinput

然后在文檔中使用如下:

  

/documentclass[nofonts]{ctexart}/usepackage{mylinuxfonts}/begin{document}你好,/LaTeX!/end{document}

texlive 提供一個(gè)變量 TEXMFHOME(默認(rèn)為~/texmf),給用 戶(hù) 存 放 自 己 獨(dú) 立 安 裝 的 宏 包、 字 體 等。 宏 包 文 件 需 要 放 置 到 目 錄TEXMFHOME/tex/latex 或 者 它 的 子 目 錄  下。 我 們 將 mylinuxfonts.sty放到目錄~/texmf/tex/latex 下,然后編譯 foo.tex 文件即可。texlive 另外提供了一個(gè)變量 TEXMFLOCAL(默認(rèn)為 /usr/local/texlive/texmf-local),給系統(tǒng)管理員用來(lái)安裝供整個(gè)系統(tǒng)使用的額外的宏包或者字體。宏包文件需要放到目錄 TEXMFLOCAL/tex/latex 或者它的子目錄下。我們將 mylinuxfonts.sty 文件放到這個(gè)目錄下:

  sudo cp mylinuxfonts.sty /usr/local/texlive/texmf-local/tex/latex/local

  TEXMFLOCAL 目錄需要一個(gè)保持更新的文件名數(shù)據(jù)庫(kù),否則新增的文件就無(wú)法找到。我們通過(guò)命令 mktexlsr 來(lái)更新它。

  原作者提供的優(yōu)化配置:

現(xiàn)在我們的 texlive 已經(jīng)支持中文了,但我們還可以再優(yōu)化一下我們的ctex 配置。

上面提到,ctex 默認(rèn)是使用的字體配置選項(xiàng)是 winfonts,那么我們每個(gè)要使用 ctex 宏包的 tex 文檔中都要設(shè)置 nofonts 選項(xiàng)。

ctex 宏包提供了一個(gè)配置文件 ctexopts.cfg,該文件中的代碼會(huì)在 ctex宏包的開(kāi)頭(選項(xiàng)定義后面)執(zhí)行。我們可以使用此文件設(shè)置 ctex 宏包的默認(rèn)選項(xiàng)。

lienhua34:text$ cd /usr/local/texlive/2015/texmf-dist/tex/latex/ctex/cfglienhua34:cfg$ sudo cp ctexopts.cfg.template ctexopts.cfglienhua34:cfg$ sudo vi ctexopts.cfg

然后輸入一下內(nèi)容

% ctexopts.cfg: set default options/ExecuteOptions{nofonts}/endinput

保存,然后運(yùn)行 mktexlsr 命令。ok,此時(shí) ctex 宏包默認(rèn)的字體選項(xiàng)便改為nofonts 了。


發(fā)表評(píng)論 共有條評(píng)論
用戶(hù)名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 兴城市| 铅山县| 平安县| 吐鲁番市| 公安县| 招远市| 景泰县| 吉首市| 成安县| 襄樊市| 万宁市| 皋兰县| 玉溪市| 安岳县| 阳西县| 泰顺县| 德保县| 汽车| 西充县| 平阴县| 和平县| 遵义市| 石嘴山市| 潮州市| 保康县| 河源市| 泌阳县| 永泰县| 木兰县| 谷城县| 金湖县| 霸州市| 南丰县| 临安市| 台南县| 怀化市| 儋州市| 隆化县| 巩留县| 大城县| 赤水市|