手机版
你好,游客 登录 注册 搜索
背景:
阅读新闻

LaTeX 入门教程

[日期:2015-03-04] 来源:Linux社区  作者:京山游侠 [字体: ]

在我的上一篇随笔中《Linux下优秀的文本编辑器(Markdown、LaTeX、MathJax) 见 http://www.linuxidc.com/Linux/2015-03/114459.htm》,我提到了Markdown、LaTeX和MathJax。这几个东西对目前的网络技术文章的写作、展示都有深远的影响。在上一篇中,我还给出了一份LaTeX语法的学习资料。在这一篇里,我想再来谈谈LaTeX。

在很多人心中,LaTeX是一个很专业的排版系统,同时也是一个很复杂的系统。说到专业,确实很多科技论文都是用LaTeX写作,而且很多知名的杂志社只接受LaTeX格式的投稿,而且使用LaTeX排版得到的效果那是超级赞,特别是对科技论文中充斥的数学公式而言。说到复杂,不仅是因为LaTeX排版语言命令繁多,更因为它数之不尽的宏包,学习成本真的是相当相当相当的高。

Ubuntu 14.04 和 Linux Mint 17 中通过 Texmaker 来使用LaTeX  http://www.linuxidc.com/Linux/2014-10/107896.htm

用LaTeX制作个人简历  http://www.linuxidc.com/Linux/2014-02/96791.htm

LaTex初学者模板  http://www.linuxidc.com/Linux/2013-03/81040.htm

对于一套LaTeX排版系统,它究竟包含哪些东西呢?我认为它主要可以分成这样几个部分:

  • 一个排版引擎,TeX或pdfTeX或XeTeX;
  • 一系列的字体;
  • 一系列的宏包;
  • 一些工具,比如用来查看各种排版引擎输出的排版结果,或者在dvi、ps、pdf等格式之间的转换。

而对于LaTeX排版系统的复杂性,我认为主要是由于历史原因引起的,理由如下:

  • 最早的由Knuth教授写的TeX引擎不支持UTF-8编码的输入文件,所以要让它支持中文实在是太难了;
  • 最早的TeX系统自带一套字体,要扩展它就得扩展相应领域的字体,比如LaTeX自带丰富的数学字体,要把字体安装到TeX系统中是一件非常复杂的事情;
  • 大量的第三方宏包,安装和学习都非常困难;
  • 都什么年代了,谁还用dvi格式和ps格式啊,用pdf多方便啊。

对于这些历史原因引起的复杂性,现在早就解决了,只是很多书籍没有写清楚而已。我认为现在用LaTeX其实很方便的,理由如下:

  • Knuth教授的Tex引擎用来瞻仰即可,实际工作中使用XeTeX引擎,完美支持Unicode字符集和UTF-8编码,中文再也不是问题;
  • 字体神马的,Knuth教授的METAFONT早过时了,现在谁还不用TrueType啊?好的字体当然少不了像Microsoft、Adobe、Apple这些既有钱又有品味的公司出品了;
  • XeTeX引擎可以直接使用操作系统中安装的字体,再也不用考虑把字体安装到TeX系统中了;
  • XeTeX引擎直接输出pdf格式的文件;
  • 排版也可以有IDE工具,比如TeXWorks;
  • 至于宏包太多这个问题,我们可以用现成的发行版嘛,比如texlive套装。

下面开始实战。我是在Ubuntu系统下使用texlive,为了省事,我直接安装了texlive-full,使用如下命令:

sudo apt-get install texlive-full

然后,再安装一个TeXWorks,命令如下:

sudo apt-get install texworks

下面是TexWorks的工作界面,排版引擎一定要选择XeLaTex哦。左边是文档编辑,右边是预览效果:

第一次运行是不可能成功的,因为还要像下面这样设置一下字体。

如果要想顺利地进行中文排版,必须得借用一点中文字体。中文排版所用到的字体一般有6种,分别是:宋体、楷体、黑体、仿宋体、隶书和幼圆。所以我从我的Win7系统下将这几个字体拷贝到Ubuntu中,把它们扔到主目录下的.fonts中即可。(隶书和幼圆要安装了Office才有。)如下图:

当然,如果不想完全达到Windows中的效果,也是可以不借用它的字体的。在Linux中,宋体、黑体和楷体是不缺的,其它字体就欠奉了。如果不借用Windows中的字体,则宋体可由AR PL UMing代替,楷体可由AR PL UKai代替,黑体可由Droid Sans Fallback代替,如下图:

然后,修改/usr/share/texlive/texmf-dist/tex/latex/ctex/fontset/ctex-xecjk-winfonts.def中的字体名称和上图中fc-list输出的字体名称一一对应,如下图:

看到上面的路径是不是觉得它太长了?太难找了?的确如此,texlive的路径就是这么复杂。我第一次是根据错误信息找到的这个文件。

texlive-full实在是太大了,我安装的时候几乎花了一夜的时间去下载。对于这么复杂的系统,它的各种配置文件啊、环境变量啊,都放在哪里呢?使用tlmgr conf命令即可查看,如下图:

对于写写中文文档,使用ctex宏包就足够了。并不是很复杂。LaTeX还有一些更加复杂的功能,比如制作幻灯片啊、绘图啊什么的,都有相应的宏包可以使用,而且安装texlive-full的时候,都安装了非常详细的帮助文档,只需要打开/usr/share/texlive/doc.html这个文件,就可以看到所有宏包和帮助文档的列表,我之前分享的《一份不太短的LaTeX介绍》里面有,经典的《Tex by Topic》里面也有,如下图:

看到这个一公里长的列表,你有什么感想呢?

本文永久更新链接地址http://www.linuxidc.com/Linux/2015-03/114460.htm

linux
相关资讯       latex  LaTeX教程  LaTeX入门 
本文评论   查看全部评论 (0)
表情: 表情 姓名: 字数

       

评论声明
  • 尊重网上道德,遵守中华人民共和国的各项有关法律法规
  • 承担一切因您的行为而直接或间接导致的民事或刑事法律责任
  • 本站管理人员有权保留或删除其管辖留言中的任意内容
  • 本站有权在网站内转载或引用您的评论
  • 参与本评论即表明您已经阅读并接受上述条款