图解Texlive2008的安装和XeTeX的简单中文排版

239 篇文章 2 订阅
面的内容仅仅只是一个演示,既如何在Ubuntu 8.10 下安装Texlive 2008,以及如何用 XeTeX 来生成一个适合在网络上浏览的 PDF 文档。传统 CJK 宏包也可以生成,但字体配置着实有些令人生畏,所以这里使用XeTeX。过程很简单,如果是老手或牛人就不用看了。


解决 kile 以及 AUCTeX 等安装的依赖问题,可以看第三页 42 楼。
9.04 上 kile 的 dummy 包在第六页 79 楼。
第七页的 91 楼上有 lovelotus 修订过的 dummy 包,需要的可以下载那个!
如果使用tlmgr --gui更新时出错,可以看看 第六页 86 楼 lovelotus 的回复并下载相应的文件。


第一步、安装Texlive

我这里使用的是2008的DVD版( http://www.tug.org/texlive/acquire.html),可以全部安装,也可以挂载ISO文件直接运行。我是全部安装。不推荐Ubuntu 8.10源里的那个2007,它的XeTeX版本有些旧,后面我们要装zhspacing或者xeCJK就有些麻烦:

1)因为要使用图形界面而不是在命令行下倒腾,所以需要首先安装perl-tk包,很小:
代码:
sudo apt-get install perl-tk


2)解压下载后的lzma文件并挂载此ISO文件到/mnt上:
代码:
sudo mount -o loop texlive2008-20080822.iso /mnt


3)cd到mnt目录,用命令:
代码:
 sudo ./install-tl --gui


接着,会跳出一个图形窗口供选择安装:

附件:
文件注释: 初始化安装界面
install1.png
install1.png [ 112.88 KiB | 被浏览 33993 次 ]



点击第四项“Language Collections“,取消不用的语言包,可以节省300兆的空间:

附件:
Screenshot-Language Collections.png
Screenshot-Language Collections.png [ 47.53 KiB | 被浏览 33720 次 ]



再选择最后一项“Create symlinks in system directories“,让安装程序自己来给我们创建语法链接:

附件:
Screenshot-Create symlinks in system directories.png
Screenshot-Create symlinks in system directories.png [ 3.16 KiB | 被浏览 43232 次 ]


附件:
Screenshot-Create symlinks in system directories-1.png
Screenshot-Create symlinks in system directories-1.png [ 6.59 KiB | 被浏览 43213 次 ]


最后的安装界面是这样的:

附件:
Screenshot-Install-tl.png
Screenshot-Install-tl.png [ 112.9 KiB | 被浏览 33555 次 ]



点击“Install Tex Live”就可以安装了。当然,也可以挂载ISO文件,从DVD上运行,效果一样,因为它的名字就是Live DVD嘛,不过稍微需要一些配置。如果你像我一样,硬盘大,人又懒,那么还是全部安装的好。

路径在安装过程中已经自动设置好了,如果愿意,还可以在/etc/environment中添加一句/usr/local/texlive/2008/bin/i386-linux,比如我的就是:

代码:
PATH="/usr/local/texlive/2008/bin/i386-linux:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games"
LANGUAGE="en_US:en"
LANG="en_US.UTF-8"


这一步似乎有些画蛇添足。Anyway,加上也无所谓。

以后如果要升级的话,可以在命令行中输入:

代码:
sudo tlmgr --gui


调用Texlive2008的管理器, 由于帖子的附件限制,具体请看21楼。。。

完成后,需要的东东都在上头了,不过要搞定中文就需要折腾一番了。Now,接着来。。。

第二步,配置中文XeTeX

严格说,这个标题有语病,因为即使不配置,XeTeX还是可以正常处理中文,因为它不像LaTeX,它可以直接调用系统字体。比如:

代码:
\documentclass{article}
\usepackage{fontspec}
\setmainfont{SimSun}

\begin{document}
Cowards die many times before their deaths.\\

懦夫在未死之前,已身历多次死亡的恐怖了。
\end{document}


附件:
Screenshot-test.pdf - Adobe Reader-1.png
Screenshot-test.pdf - Adobe Reader-1.png [ 172.67 KiB | 被浏览 33650 次 ]



(一)安装zhspacing

但问题是,中文是正常了,英文也用宋体渲染就太难看了。所以,这里需要安装一个 zhspacing 宏包,有了它,就可以正常处理中文的断句、断字和使用正确的英文字体。下面是步骤:

1)到 http://code.google.com/p/zhspacing/上下载zhspacing080102.tar.bz2包,顺便把那个 man 文件也下载下来,看看用法。

2)解压后,把里面的六个文件放到 /usr/local/texlive/texmf-local/tex 中的 xelatex/zhspacing 中去,这里需要有 su 的权限,如果没有这两个嵌套的文件夹,自己新建就是了。其实也可以放到家目录下面的 .texlive2008 里,总之就是放在一个 XeTeX 找得着的地方。

3)在终端下使用命令:
代码:
sudo mktexlsr


这里要提醒的是,其中有一个文件名为 zhfont.sty,默认设置的一些字体是:

代码:
\newfontfamilywithslant\zhrmfont{SimSun}

\newfontfamilywithslant\zhsffont{SimHei}

\newfontfamilywithslant\zhttfont{FangSong_GB2312}

\else

\newfontfamilywithslantandbold\zhrmfont{SimSun}{SimHei}

\newfontfamilywithslant\zhsffont{SimHei}

\newfontfamilywithslantandbold\zhttfont{FangSong_GB2312}{KaiTi_GB2312}


如果你的系统中没有相应的字体,编译的时候会出错,所以要用 fc-list 看看你的系统中有哪些字体,替换上面代码中的字体名就可以了。另外,那个 zhspacing.sty 里也有几个字体的配置,仔细查看一下自己系统里是否有这些字体。

接下来,测试一下:

代码:
\documentclass[11pt,a4paper]{article}
%------------------------------------------------------------------------------------------------------
\usepackage{fontspec,xltxtra,xunicode}    % 这里使用 xetex 相应的宏包
\usepackage{zhfont}                       % 这里调用 zhfont.sty
\zhspacing
%------------------------------------------------------------------------------------------------------

%------------------------------------------------------------------------------------------------------
\setzhmainfont[BoldFont=LiHei Pro]{KaiTi_GB2312}%这里设置中文粗体和普通字体
\setmainfont{TeX Gyre Pagella}           %这里设置英文衬线字体
\setmonofont{Monaco}                     %英文等宽字体
\setsansfont{Trebuchet MS}               %英文无衬线字体
%-------------------------------------------------------------------------------------------------------

\begin{document}
Cowards die many times before their deaths.\\

懦夫在未死之前,已身历多次死亡的恐怖了。
\end{document}


虽然看上去头重脚轻,不过应该不会有问题了,保存为 test.tex,编译:

代码:
xelatex test.tex


附件:
Screenshot-test.pdf - Adobe Reader.png
Screenshot-test.pdf - Adobe Reader.png [ 481.32 KiB | 被浏览 33571 次 ]



现在可以看见漂亮的英文字体了,当然楷体不怎么样,可以换成其他字体,比如宋祖德最喜欢的女神徐静蕾 MM 的方正静蕾简体就不错,可惜太淡了。

此外,也可以调用 zhspacing.sty。更简单的办法是直接修改这两个文件(zhspacing.sty 和 zhfont.sty)中的字体,设置成你需要的字体,这样无需再在你的文档里设置字体。

(二)安装xeCJK

另外,还有一个中文解决方案是使用xeCJK。可以到 http://bbs.ctex.org/viewthread.php?tid=40232 上去下载( 在第 5 页的 66 楼也可以下载附件)。它并不比 zhspacing复杂,安装方式差不多:

下载后,解压xecjk-2.29.zip文件,把压缩包里的 tex/xelatex 下的 xecjk 目录复制到和上面那个zhspacing 目录相同的地方就可以了。不要忘了之后执行:sudo mktexlsr。

xeCJK设置也很灵活,首先,在preamble中加载宏包:

代码:
\usepackage[slantfont,boldfont]{xeCJK}


然后设置字体:

代码:
\setCJKmainfont{FZJingLeiS-R-GB}    % 设置缺省中文字体
\setCJKmonofont{SimSun}          % 设置代码或数学公式出现的中文字体


比如:

代码:
% !Mode:: "TeX:UTF-8"
\documentclass[12pt,a4paper]{article}
\usepackage{xltxtra,fontspec,xunicode}
\usepackage[slantfont,boldfont]{xeCJK} % 允许斜体和粗体

\setCJKmainfont{FZJingLeiS-R-GB}   % 设置缺省中文字体
\setCJKmonofont{SimSun}   % 设置等宽字体
\setmainfont{TeX Gyre Pagella} % 英文衬线字体
\setmonofont{Monaco} % 英文等宽字体
\setsansfont{Trebuchet MS} % 英文无衬线字体

\begin{document}

\begin{verse}
Stray birds of summer come to my window to sing and fly away. \\
And yellow leaves of autumn, which have no songs, \\
flutter and fall there with a sign.\\

\hfill \emph{Rabindranath Tagore}
\end{verse}

\begin{verse}
夏天的飞鸟,飞到我的窗前唱歌,又飞去了。\\
秋天的黄叶,它们没有什么可唱,只叹息一声,飞落在那里。\\
\hfill \emph{罗宾德拉纳特·泰戈尔}
\end{verse}

\end{document}


效果为:

附件:
Screenshot-poem.pdf - Adobe Reader.png
Screenshot-poem.pdf - Adobe Reader.png [ 210.52 KiB | 被浏览 27745 次 ]



在 xeCJK 的压缩包里有三个文件:ctex4xetex.cfg、xeCJK.sty 和 xeCJKpunct.spa。第一个是用来导入以前 CTeX 宏包对中文排版专门的设置以及 CTeX 的三个类(ctexart、ctexrep、ctexbook),第二个是 xeCJK 对 xetex 排版时中文标点符号、空格等的规定,第三个是与特定字体相对应的特定的标点符号的设置,默认给出的是 “文鼎pl简报宋”,最好自己生成。

在 xeCJK 的压缩包里有一个 source 目录,作者已经写好了一个脚本,用来为特定字体生成对应的标点符号,默认设置是 Windows 上使用的 gswin32c.exe,只需要按照作者的提示,注释掉它,使用 Linux 常用的 gs。具体的用法,作者的范例和 README 文件已经说地很详细了。

我一般在系统中会安装 Adobe 的四个字体:Adobe Song Std(宋体)、Adobe Kaiti Std(楷体)、Adobe Heiti Std(黑体)、Adobe Fangsong Std(仿宋)。正文使用 Adobe Song Std、斜体字使用 Adobe Kaiti Std、粗体字使用 Adobe Heiti Std、等宽字体使用 Adobe Fangsong Std。这样,对应的设置就是:

代码:
\documentclass[11pt,a4paper]{report} % 使用 report 类
\usepackage{fontspec,xunicode,xltxtra} % 加载 xetex 的宏包

% 以下是英文字体的设置
\defaultfontfeatures{Scale=MatchLowercase} % 这个参数保证 serif、sans-serif 和 monospace 字体在小写时大小匹配
\setmainfont[Numbers=OldStyle,Mapping=tex-text]{Garamond Premier Pro} % 使用 Garamond 字体,把数字设置为等宽,比较好看
\setsansfont[Mapping=tex-text]{Optima LT Std} % 使用 XeTeX 的 text-mapping 方案,正确显示 LaTeX 样式的双引号(`` '')
\setmonofont{Monaco}

% 以下是中文字体的设置
\usepackage[slantfont,boldfont,CJKnumber,CJKtextspaces]{xeCJK} % 加载 xeCJK,允许斜体、粗体和 CJK 数字以及 CJK 对空格的设置
\setCJKmainfont[BoldFont={Adobe Heiti Std}, ItalicFont={Adobe Kaiti Std}]{Adobe Song Std}
\setCJKsansfont{YouYuan}
\setCJKmonofont{Adobe Fangsong Std}

\begin{document}

% 开始码字

\end{document}


这里的前提是,上面所有的字体都安装了,其中“Numbers=OldStyle” 这个选项不是对所有英文字体都起作用,有的英文字体没有这个属性,不过对于 TeX Gyre Pagella 系列是适用的。

如果你写的东西基本和英文没什么关系,大可以不用设置英文,甚至无需加载 “\usepackage{fontspec,xunicode,xltxtra}” 这一项,而是使用 xeCJK 作者提供的 ctex4xetex.cfg,这样就可以充分利用以前 CTeX 的特性:

代码:
\input{ctex4xetex.cfg} % 导入 ctex4xetex.cfg
\documentclass{ctexbook} % 使用 ctexbook 类

\usepackage[boldfont,slantfont,CJKnumber]{xeCJK}
\setCJKmainfont[BoldFont={Adobe Heiti Std}, ItalicFont={Adobe Kaiti Std}]{Adobe Song Std}
\setCJKsansfont{YouYuan}
\setCJKmonofont{Adobe Fangsong Std}

\begin{document}

% 开始码字

\end{document}


上面代码中没有设置英文,所以默认使用的是计算机现代字体。

第三步,简单的排版

以上安装配置搞定以后,中文英文都不成问题了,就可以来实际地排一排版了,这里祭出偶最喜欢的《金瓶梅》第一回中的几段文字来看看实际效果。

开始之前,有这样一个问题,就是,我们想要 PDF 文件在用 acrobat reader 打开的时候只显示一页,就像幻灯片一样,不多不少就是一页,而且不需要用滚动条就可以看到这一页的全部内容。acrobat reader 会视屏幕大小自动放大页面,显示相应的、更清晰的字体。很适合在在网页中在线浏览。当然,你可以直接用 beamer 来实现,不过这里我们不是做幻灯,所以可以用另一种办法。

首先,需要考虑一下页面的大小,也就是适合在什么样尺寸的显示器上表现。我的本本是 13.3 寸的,所以就假定是十四英寸的显示器,宽高比大致保持为 3:2 这样一个比例,这样,在 preamble 区中设置如下命令:

代码:
\setlength{\textwidth}{4.166in}
\setlength{\textheight}{3in}


(这里的 4.166in 来源于图像处理时的 300dpi 下 300x300 像素的一英寸图像在导出为 72dpi 解析度后的实际大小,也就是 4.166in。这个解释好费劲,你可以直接忽略掉,用 Photoshop 的人应该知道。)

效果如下:

附件:
Screenshot-jpm.pdf - Adobe Reader.png
Screenshot-jpm.pdf - Adobe Reader.png [ 317.04 KiB | 被浏览 27649 次 ]



这样就可以了,需要的文字会被显示在一个长宽适中的范围内。但是,页面周围的空白太多了,很不好看,所以要剪裁掉多余的 margins,怎么办呢,使用 Texlive2008 自带的一个小工具 pdfcrop 就可以了,用法很简单,我这里使用的是:

代码:
pdfcrop --margins '20 20 20 12.36' --clip jpm.pdf jpm_new.pdf


上面的四个数字代表的是左、顶、右、底的 bp(big points),这是 pdfcrop 的单位(1 in = 72 bp) 。

到这里,我们的文章就排好了,效果如下:

附件:
Screenshot-crop.pdf - Adobe Reader.png
Screenshot-crop.pdf - Adobe Reader.png [ 338.12 KiB | 被浏览 27384 次 ]



PS:剪裁这一步,如果你有 acrobat 9 的话,可以很直观地调节,Document / Crop Pages。调整好后保存,然后用 vim 之类的编辑器打开 PDF 文件,查找 /Cropbox 这个语句,它后面会有一个参数表,比如:[72.0 441.0 478.28 769.89]。复制下来,然后在 preamble 中添加一句:

引用:
\usepackage[dvipsone,pdfpagescrop={72.0 441.0 478.28 769.89},]{hyperref}



以后编辑的时候就无须再用pdfcrop来剪裁了。

另外,楼下的 milksea 说应该使用 geometry 宏包,的确,那才是正统的方式。中文说明可以看 CTeX 上的文档 http://www.ctex.org/documents/packages/layout/geometry.htm(要设置一下驱动选项)。此外还有简单一些的 zwgetfdate 宏包等,都可以对页面进行调整。上面使用的只是能实现效果的一种途径(可能很蹩脚),所谓 there is more than one way to do it。如有不当或没说清楚,请见谅,仅仅是个演示,重要的是 XeTeX 的安装和中文字体的设置。

http://forum.ubuntu.org.cn/viewtopic.php?t=168940

http://www.oschina.net/question/12_63776?from=20120812

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: 如何安装texlivetexstudio? 可以按照以下步骤在电脑上安装texlivetexstudio: 1. 下载texlive安装文件,可以在官网或镜像网站上找到,下载后进行安装。 2. 下载texstudio,同样可以在官网或镜像网站上找到并下载。 3. 安装texstudio,按照提示进行操作。 4. 打开texstudio,将texlive路径配置到软件中,即可开始使用。 ### 回答2: TeXLiveTeXstudio是目前较为常见的TeX编译工具,TeXLiveTeX系统的基础,它集成了所有的TeX程序包和字体,并能够进行跨平台的安装和升级;TeXstudio则是一款TeX编辑器,它提供了许多TeX编辑相关的功能,如语法高亮、智能补全、实时预览等。 安装TeXLiveTeXstudio步骤如下: 1. 下载TeXLiveTeXstudio TeXLive的下载地址为:https://www.tug.org/texlive/acquire.html,选择符合自己系统的版本进行下载;TeXstudio的下载地址为:https://www.texstudio.org/#download,同样选择符合自己系统的版本下载。 2. 安装TeXLive 安装TeXLive需要管理员权限,可以选择默认安装选项,也可以根据自己的需要进行定制安装安装完成后,需要添加环境变量,将TeXLive的bin目录添加到系统的PATH环境变量中,这样才可以在命令行中使用TeXLive的相关命令。 3. 安装TeXstudio 安装TeXstudio只需要按照安装向导逐步进行即可,可以选择默认安装选项。安装完成后,可以打开TeXstudio进行设置,如字体、编码、默认保存格式、插件等。 4. 使用TeXstudio 打开TeXstudio后,可以使用左侧的工具栏进行文件的新建、打开、保存等操作;中间的编辑区可以编辑TeX文件,右侧的预览区可以预览TeX文件的内容。可以使用菜单栏上的编译按钮进行编译,编译完成后预览区会显示PDF文件。 需要注意的是,TeXLiveTeXstudio是两个相互独立的软件,需要分别安装和设置。同时,如果需要使用中文编译,还需要安装相关中文字体和中文支持包。 ### 回答3: TeXLiveTeXStudio是TeX文档编译的两个常用工具,TeXLive提供了一系列TeX相关的工具和库,TeXStudio则是一款TeX文档编写和编辑的工具。在这里,将详细介绍TeXLiveTeXStudio的安装过程。 一、TeXLive安装 1. 下载TeXLive:首先需要下载TeXLive安装包,可在官网(https://tug.org/texlive/acquire-netinstall.html)下载,也可以使用国内的镜像网站下载(如:https://mirrors.tuna.tsinghua.edu.cn/)。 2. 安装TeXLive:解压下载下来的安装包,运行其中的“install-tl-windows.exe安装程序,根据提示进行安装。一般选择默认设置即可。 3. 配置环境变量:在安装过程中会提示是否配置环境变量,如果没有配置,需手动配置。在系统环境变量中添加“PATH”变量,将TeXLive的bin目录添加到其中。 4. 检查安装安装完成后,可以在命令行中输入“tex -v”验证TeXLive是否安装成功。 二、TeXStudio安装 1. 下载TexStudio:TeXStudio官网(http://texstudio.sourceforge.net/)提供了Windows、Mac、Linux等多个操作系统平台的版本,选择相应的版本进行下载。 2. 安装TeXStudio:双击下载下来的安装包,按照提示进行安装,一般选择默认设置即可。 3. 配置编译器:打开TeXStudio,依次选择“选项”-“配置TeXStudio”,在左边的菜单中选择“构建”选项卡,在右边的下拉框中选择“默认编译器”为“txs:///pdflatex”(如果需要使用XeLaTeX或者LuaLaTeX编译,需要在论文开头添加对应的格式)。 4. 配置PDF查看器:在TeXStudio中预览PDF文档需要安装PDF查看器,Windows系统常用的有Adobe Acrobat Reader、Sumatra PDF等,Mac系统自带Preview,Linux系统可安装epdfview等多个查看器。在TeXStudio中选择“选项”-“配置TeXStudio”,在左边的菜单中选择“构建”选项卡,在右边的下拉框中选择“PDF查看器”为上述所用的PDF查看器。 5. 检查配置:完成以上配置后,可以新建一个.tex文件,写入测试代码并编译,观察是否编译成功。 以上是TeXLiveTeXStudio的安装和配置过程,希望对大家有所帮助。需要指出的是,与网上下载已经打包好的TeX环境相比,自己安装TeXLive可以根据需求自由配置安装内容,可有效减少安装的文件大小,提高使用体验。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值