个人用过 LYX、Sublime Text、TeXworks、TexStudio、WinEdt、Emacs, Atom, ShareLaTeX,
Emacs 结合配置 AUCTeX 会比较好用。Windows 和 Linux 皆可用。
Linux的话推荐用kile,尤其是使用kde界面的话,我就是因为这个软件才没法卸掉电脑里的Linux;winedt太丑,其他的功能总有不满意的地方,这个是我目前用到最完美的IDE了
WinEdit的对中文支持,编码支持不太好,也不会像别的编辑器那样自动断行
TeXworks界面最简单,我用这个比较多,因为很多TeX命令都能背出来了,所以没必要看提示的,当然这个有自动补全
TeXMaker的QT界面不错,也能进行拼写检查 ,配置起来选项比较多,有点麻烦
TeXShop的,Mac OS X平台,这个是TeXWorks的设计原型,界面比较简洁,打中文也没问题
Mi编辑器,Mac OS X平台的,这个配合它的LaTeX插件也不错,支持SVN,很不错的东西,就是没有完全移植到Windows下来
Vim是全能王,不过默认的编码样式够你喝一壶的,中文不是问题
Emacs也是全能王,本身就有TeX模式,写作起来,也不慢,很带劲
TeXlipse,这个也相当强悍,不过我不喜欢Eclipse
LEd的语法补全很灵活多变,但是编码支持不是太好
我看的是同学在Windows上用的TeXWorks, 感觉是功能很简单, 界面很简洁——但还不够, 光是这些功能的话可以更简洁点. TeXWorks的pdf预览行为和TeXMaker类似, 这点不错. PDF预览我觉得很重要的一个指标是文件修改时自动重新加载, 这点上我用的okular能做到, Windows平台下的Acrobat Reader和Foxit好像都做不到? 这个问题上你有什么推荐吗?
SynTeX的问题,找一个支持SynTeX功能的pdf阅读器就行没查到SynTeX的细节, 在这个网页[1]上查到的说法是"支持SynTeX功能或者在文件有修改时重新载入功能的阅读器", 我觉得还是"文件修改就重新载入"比较靠谱点. 不知道okular是怎么实现的:)
[1] http://tex.stackexchange.com/questions/16914/whats-the-fastest-way-to-preview-changes-as-i-learn-tex
emacs下有个同名插件可以调用LanguageTool做语法检查,聊胜于无。另外强烈推荐补全插件company,配合ispell可以实现单词的补全(词汇量渣渣的福音),而且还能补全文件路径,插入图片时灰常方便,也支持yasnippet后端,还有company-math后端, 可以补全数学符号,带预览。再另外还有flycheck,可以做一些Latex语法提示,比如提示在.后面加上\@之类的
哦对了还有一个小插件auctex-latexmk,给auctex提供了调用latexmk的接口(不知道为什么auctex本身不支持直接调用latexmk命令)
Windows下, WinEdit最常用。 Linux(*nix)下很多, 我一般用TexMaker。 看这里有个表格:
, 我自己平时是用的TeXStudio,英文编辑和预览非常出色,中文的支持有些不尽人意所以遇到中文就用cTeX自带的WinEdt了
Emacs + auctex配置比较麻烦,上手时间较长。一旦熟悉,效率超级高,大量快捷键,自动补齐,高亮语法等等,谁用谁知道。要是偶尔才用latex,没必要用emacs。要是会经常写emacs,花点时间学学,绝对大幅度提升工作效率。
win下下载并安装完ctex后,直接用texmaker,很简单
我是TeXLive/XeLaTeX用户,用一种比较low的方式在干活:
Sublime Text写 LaTeX,
保存完之后打开TeXworks编译
写多了发现很多时候有个养眼的语法高亮就满足了,另外配置ST的编译系统还是有点麻烦,也不习惯。编译完的操作也不如TeXworks舒服 Sublime Text是有一个据说还不错的LaTeX的Package的,但是个人感觉还是不好用,自动完成提示的东西不是太少而是太多了,貌似还和ST一样会提示注册?挺烦的。LaTeXTab是个很不错的Package,能够把excel或者csv的内容转化成tabular,总算是减少了一件反人类的苦劳 中文支持,一个IDE得做得多么随意才不支持中文啊。当然我这句话的主要目的是来黑LyX的。
Windows下安装CTeX的话默认把Winedt装上了,虽然不能自动提示命令,但是各种GUI的操作还是比较方便的,CTeX下的Winedt默认为GBK编码,对中文支持无压力,我还拿它写过CV。需要注意的是Winedt是共享软件, 链接是Winedt更为详细的介绍。个人认为Winedt作为普通入门级Windows用户来说是够用了。
最近做毕设切换到了Win平台,之前在Linux下多用Vim,不过还是用的不熟练,到Win下也不太想去折腾了,为了偷懒于是乎就用了Sublime Text 2这款编辑器 + LaTeXTools插件+vim模式,自己再写个makefile,用起来还是比较舒服的,LaTeXTools插件有部分代码的自动补全,你自己还可以自定义一些常用的代码片,另外它对latex语法的高亮处理也比较好。Sublime Text 2 下需要UTF-8编码,如果是在Win下由于默认是GBK编码,配合ConvertToUTF8和GBK Encoding Support插件比较完美。目前我的方案就是用UTF-8编码,
xelatex秒杀中文问题。 「自动提示命令」——用LaTeX写个文档真心不太需要,根本就不需要多少命令,我用的最多的也就是section, subsection, 插入图片表格什么的,图片表格的代码基本都是复制粘贴的,工作量不大。 当然,这个前提是我用了前辈留下的论文模板。
Linux下我用过的还有Lyx,写过大约5000字左右的长文(没有复杂的结构和很多其他的宏包),用的ctexarticle文档类,一路写下来很舒服。(但是如果文章中需要引用很多其他宏包的还是不推荐Lyx,目前没发现可直接写LaTeX源码)。所以啦,还是不推荐这个。
Vim/Emacs学习曲线有点抖,但是
熟练之后效率大增!Sublime Text 2入门容易,配合一些插件和Vim模式/键盘快捷键什么的效率也还凑合,但不是免费编辑器(可以无限期免费
试用),授权费几十刀吧。
TeXstudio看起来挺不错的样子,改天试用后再来一起总结下。它的主页在这 可惜背墙了。
可以下载到。
其他的适合TeX的编辑器没接触过
在Windows下,我想没有任何一个Latex编辑器可以超越Winedt,能够快速链接\input的内容,图片内容,带表格生成器,数学面板等。并且参考文献的支持也很好,比较智能。
在Linux下,我用过最好用的是Kail,一个类似于Winedt的编辑器,当然,有时候字体渲染不好会显得界面有点丑,但是功能完善。
在Mac下,我用过最好的编辑器是SublimeText+LatexTools,唯一的缺点是没有数学面板,需要查手册,但是参考文献的引用,快速建立相关环境是其最大的优势,强大的搜索功能也是无与伦比的。
试试 TeXpen 呗
我推荐你试试LyX,最近刚好我写了一篇关于LyX的介绍,你可以参考下:
以下是此文的部分内容:
LyX是跨平台的,所以无论你是什么操作系统,都可以用。安装包可以从这个[页面]( )下载。
Windows下的首次安装可以选择Bundle版,也可以单独安装[MiKTeX]( )后再安装Installer版(其实LyX的Bundle版就是比Installer版多了一个MiKTeX,LyX需要调用LaTeX引擎编译,在Windows下,推荐用MiKTeX)。安装后往往MiKTeX会自动更新一些宏包,此时可以选择国内的镜像服务器(如中科大的)加快更新速度,完毕后在LyX的「工具」菜单中选择「重配置」,然后重启即可。
LyX安装后的设置可以参考我以前写的一篇文章:[LyX中文配置 Tips]( );
我总结的一些具体的使用技巧请参见这篇长期更新的经验贴:[LyX Tips]( );
如果你想生成漂亮工整的Beamer幻灯片,可以参考这篇配置:[LyX Beamer配置 Tips]( )。
最简单的上手方式就是开写,英文文档直接写,中文文档按我上面给出的LyX中文配置进行设置即可。写完后点击LyX菜单栏下的那一双大眼睛图标(也可按快捷键`Ctrl+R`)编译一份预览PDF,你会发现这样的一份PDF从排版到数学公式的效果都堪称完美,不知比Word那蹩脚的样式好到哪里去了。
LyX的主要受众群体就是学术工作者,虽然它也可以完成其他写作任务,并且完成得很棒,但由于它在学术写作上的优势实在太突出了,我这里就不再涉及其他领域。
以我比较熟悉的理工科来说,我觉得在学术写作中最重要的几个要素分别是结构层次、交叉引用、数学公式、专业图表以及参考文献。
其中文档结构控制和交叉引用功能在传统的字处理系统如Word中已经做得不错,LyX提供的也是类似的功能,相较而言,LyX的标签管理系统我个人觉得使用起来更高效一些。
参考文献方面,Word和LyX采取的解决途径截然不同,效果却大同小异,Word通常需要安装一个插件,比如收费的Endnote或者免费的Zotero,然后事先在软件中添加好文献,之后再通过运行在Word中的插件将需要的参考文献题录信息插入到文档中;LyX则是基于BiBTeX,也需要事先收集好文献题录,然后才能在文档中插入题录信息。我个人更喜欢BiBTeX的方式,因为它是纯文本的形式,无论是什么操作系统,是否有BiBTeX引擎,只要有个文本编辑器,你就能查看和修改,这种灵活性是无可比拟的。
而数学公式和专业图表方面,LyX具有压倒性的优势。这种优势是由两方面促成的,首先是质量,无论是无缝贴合正文的公式渲染还是多种数学环境的支持,LyX都能提供近乎完美的效果,当然这是由基于LaTeX内核的前提保证的。
其次是便捷,在我比较熟悉的几类可以拿来书写学术文档的工具来说,Word看似便捷,实则不然,你匆匆写就的doc文档,通常只能得到糟糕的排版,而若想得到靠谱的排版,又不得不投入大量时间细调。第二种是另一个极端,直接写LaTeX代码,这种方式的确可以保证排版水准,却只适合编程高手;天天和代码打交道,轻车熟路,没有问题;可惜大部分人还做不到看着代码脑海中就能想象出二维的数学公式而毫无违和感,所以往往直接面对LaTeX代码的后果就是常常要面对编译的bug,过于底层的操作,用户就不可避免要承担更多的任务。LyX恰好位于这二者中间,规避了各自的不足,借鉴了各自的优势,在使用LyX时,你的直观感受仿佛是在用Word,然而基于LaTeX的特性又使得它严格遵循着一定的排版规则,比如不能有两个空格,不能出现多余的空行,等等。这一切使得你在写文章时完全不必考虑格式,只需关心内容就好,格式排版这类机械工作由LyX替你完成,真正做到了「所见即所想」(What you see is what you mean, WYSIWYM)。
我的结论是:Win装MiKTex,Mac装MacTex。Linux无可靠桌面版,忽略。 【编辑器】
考察点:每个点5分。权重系数为:
- 预览-5
- 智能提示-5
- 反向查找-4
- 查找替换-3
- 界面-3
- 价格-3
我的评分:
-TexStudio 可预览非实时(3),有自动完成(5),有反向查找(5),查找无替换(3),Mac和PC都可以用,UI凑合(4.5),免费(5)
-
Texmaker 可预览非实时(3),有自动完成(5),有反向查找(5),有查找有替换(3),Mac,PC,Linux 都可以用,UI凑合(4.5),免费(5) , 有便携版(Plus)
-Latexian 实时预览,稍有延时(4.5),有自动完成(5),没找到(5),有替换查找无正则(4),Mac可用,UI简洁(4),收费(3)
-Texpad 实时预览,稍有延时(4),有自动完成(5),没找到(5),有替换查找无正则(3),Mac可用,UI不错(4),收费(2.5)
-TexWorks Retina Mac下无法清晰显示全部UI,出局
-TeXlipse 很难用,半天找不到功能入口,界面属于山寨整入eclipse的感觉,出局
-Lyx 看保存是lyx结尾的,怕不兼容普通tex,出局
-Sublime 需要单独配置,浪费生命,不属于面向用户的工具,出局
-TeXnicCenter 不好配置,出局
【PS】
在线Latex无法和本地相比,但仍有可用性,只稍作测试,推荐cloud.sagemath(免费) 和ShareLatex (基础版免费)
用Texmaker / Texstudio。另外在线平台编译比较稳定,适合需要协同的项目 安装 LatexTools 根本不用配置
除了 shell-escape
答主明显不了解 sublime 的 packge control 之强大
Mac用户强烈推荐texpad,用户界面与体验都十分不错,第二推荐Texstudio,其他不推荐. Texstudio也不错,就是颜值差了点,胜在跨平台和免费。
gummi 必须的。
gummi有linux以及MacOS甚至windows版本,而且开源。
gummi的最大的好处就是能实时预览以及逆向同步,也就是说左边写的过程中右边可以实时的显示出遍以后的结果,
这个好处在于,随着你写就能将出错的地方限制在非常小的范围,所以对于初学者来说能非常快的找到出错的地方。
还有就是调整图片大小的时候能实时的看出版面的协调程度,快速的调整好图片的大小。
在右边预览中需要修改的地方,按住Ctrl+鼠标左键,左边编辑区域就可以同步到那一行。
这个好处在于如果篇幅很大的花,非常便于定位到你想修改的地方。不用费力的拖动滚动条。
第二个好处就是bibtex非常好用,在引用的时候在bib那个标签下查找点击一下就可以引用了非常方便。
还有很多方便之处,比如直接插入表格和图片基本上不用背命令。
这个能用来编辑中文吗
我用TeX Live + TexStudio,即编译器用TeX Live 自带的,编辑器用TeXstudio。用了三年多了
MAC用户推荐一款神器:TeXnicle
之前用TeXnicCenter,编译、配置和自动完成很方便。
现在用Emacs+AuCTeX,因为快捷键、折叠和填充(filling)非常棒。
两个对中文支持都很好,之前用过vim-latex,但发现写中文太麻烦了。emacs因为用的都是组合键而不是利用不同模式,所以天然就适合写中文。
如果你熟悉vim,强烈推荐vim+latexvim,
- TeX StackExchange
这里的总结空前的多,不愧为 StackExchange 。
但是也有不足的地方,例如一些提到的插件(Vim的 似乎就有一年多没更新了,虽然本来似乎更新周期就很漫长)不再维护或者更新等。
TeXworks用过很久蛮好用的,在线支持多人同时编辑的除了shareLaTex外比较新的还有overleaf
Stackexchange上也有很多人回答过这个问题,有各款编辑器的介绍及吐槽
Windows 下有
MikTex +
Sublime Text 3 +
LatexTools +
SumatraPDF
这种组合
现在 LatexTools 已经很成熟了可以提示 cite ref
不过 ref 还是要再同一个文件中才行
也许不如其他配置那样的所见即所得
(不过双显示器可以一战)
但是贵在不用再开其他编辑器了
代码和忽悠文可以用同一个编辑器写
而且有众多插件 (tikz lint 之类 没有的自己写一个也快)
texniccenter, texstudio in windows
kile in Linux
TexPad+Mathpad
latex新手。差不多学了几天。用了两个月。现在基本写论文各种表格公式无压力。试了几种编辑器。然后发现其实我只要Texpad +mathpad就足够了。前者是好用的编辑器界面好,可以补齐和预览很方便。后者相当于公式小助手。
实际上这两个也是某程序员推荐给我的。确实比我前面用的来的舒坦。
跨平台:
Sublime text (first choice) Mac系统:
Textmate,Emacs linux系统:
Emacs Win系统:
WinEdit (已足够优秀,身边很多人在用) 1. 维基百科上的比较:
2. Stack Exchange 上的:
居然没人提 vim + latexmk...满足你一切愿望好吧..
内核版本:Linux Kernel 3.2.1
即将面临毕业,要写毕业论文,由于自己一直使用Linux,而Linux下的Office软件兼容性实在是达不到论文的要求,以前也听说过Linux下的强大的排版工具--LaTeX。这样就不会出现换台电脑格式就会发生改变,然后忙着修改论文格式的窘境。
下面安装环境,看网络上好多都是使用texlive镜像安装,我看了一下,那镜像2个多G,好大。而且通过CJK解决中文问题(现在还不是很了解)。
下面是安装XeLaTeX的步骤
在Gentoo下直接emerge即可
Gentoo下Xetex和默认安装的texlive-core是互相block的,最终方式是选择安装texlive-xetex模块
emerge texlive-xetex -av
自动解决依赖问题。
XeLaTeX可以直接解决字体的问题,直接使用系统的字体,不用像LaTeX手动生成字体。
下面是sheriden2006的中文宏包的一个配置文件(字体得自己安装,可以从网上下载,也可以直接在win下copy)
- % xetex/xelatex 字体设定宏包
-
- \ProvidesPackage{zhfontcfg}
- \usepackage[cm-default]{fontspec} %[cm-default]选项主要用来解决使用数学环境时数学符号不能正常显示的问题
-
- \usepackage{xunicode,xltxtra}
- \defaultfontfeatures{Mapping=tex-text} %如果没有它,会有一些 tex 特殊字符无法正常使用,比如连字符。
- % 中文断行
- \XeTeXlinebreaklocale "zh"
- \XeTeXlinebreakskip = 0pt plus 1pt minus 0.1pt
- %将系统字体名映射为逻辑字体名称,主要是为了维护的方便
- \newcommand\fontnamehei{Microsoft YaHei}
- \newcommand\fontnamesong{SimSun}
- \newcommand\fontnamekai{AR PL KaitiM GB}
- \newcommand\fontnamemono{DejaVu Sans Mono}
- \newcommand\fontnameroman{Times New Roman}
- %%设置常用中文字号,方便调用
- \newcommand{\erhao}{\fontsize{22pt}{\baselineskip}\selectfont}
- \newcommand{\xiaoerhao}{\fontsize{18pt}{\baselineskip}\selectfont}
- \newcommand{\sanhao}{\fontsize{16pt}{\baselineskip}\selectfont}
- \newcommand{\xiaosanhao}{\fontsize{15pt}{\baselineskip}\selectfont}
- \newcommand{\sihao}{\fontsize{14pt}{\baselineskip}\selectfont}
- \newcommand{\xiaosihao}{\fontsize{12pt}{\baselineskip}\selectfont}
- \newcommand{\wuhao}{\fontsize{10.5pt}{\baselineskip}\selectfont}
- \newcommand{\xiaowuhao}{\fontsize{9pt}{\baselineskip}\selectfont}
- \newcommand{\liuhao}{\fontsize{7.5pt}{\baselineskip}\selectfont}
- %设置文档正文字体为宋体
- \setmainfont[BoldFont=\fontnamehei]{\fontnamesong}
- \setsansfont[BoldFont=\fontnamehei]{\fontnamekai}
- \setmonofont{\fontnamemono}
- %楷体
- \newfontinstance\KAI {\fontnamekai}
- \newcommand{\kai}[1]{ {\KAI#1}}
- %黑体
- \newfontinstance\HEI{\fontnamehei}
- \newcommand{\hei}[1]{ {\HEI#1}}
- %英文
- \newfontinstance\ENF{\fontnameroman}
- \newcommand{\en}[1]{\,{\ENF#1}\,}
下面是一个tex测试文件input.tex
- \documentclass{article}
-
- \usepackage{zhfontcfg}
- \usepackage[colorlinks,linkcolor=black]{hyperref}
- %opening
- \title{latex多字体简易示例}
- \author{颜开}
- \begin{document}
- \maketitle
- \section{楷体}
- \kai{楷体}
- \section{黑体}
- \hei{黑体}
- \end{document}
使用命令xelatex input.tex
这样就生成了input.pdf文件
1、latex、tex、xelatex、xetex的关系
LaTeX 是TeX 中的一种格式(format) ,是建立在TeX 基础上的宏语言,也就是说,每一个LaTeX 命令实际上最后都会被转换解释成几个甚至上百个TeX 命令。但是,普通用户可以无需知道这中间的复杂联系。就象编程的时候如果使用一些已经编译好的函数库和模板可以使我们仅仅用几个命令就实现很多功能一样,LaTeX 根据人们排版文章的习惯,定义了许多命令和模板,通过这些命令和模板,我们可以很快的得到漂亮的排版结果。
XeTeX(/ˈziːtɛx/或/ˈziːtɛk/[1])是一种使用Unicode的TeX排版引擎,并支持一些现代字体技术,例如OpenType。其作者和维护者是Jonathan Kew,并以X11自由软件许可证发布。它原生的支持Unicode,并默认其输入文件为UTF-8编码。XeTeX可以在不进行额外配置的情况下直接使用操作系统中安装的字体,因此可以直接利用OpenType,Graphite中的高级特性,例如额外的字形,花体,合字,可变的文本粗细等等。
XeLaTeX是使用LaTeX的排版引擎,也有上述XeTeX的优点,命令下直接使用xelatex ***.tex就会产生对应的PDF文件。
2、LaTeX和”所见即所得“排版工具的比较:『摘自lshort-cn.pdf』
优点:
*提供专业级的排版设计,使你的文档开起来如同印刷好的一样。
*可以更方便地排版数学公式。
*用户仅仅需要掌握少数容易理解的,用来说明文档之逻辑结构的命令,而无须对实际的页面设计做胡乱的修补。
*可以很容易的生成脚注、索引、目录和参考文献等复杂的结构。
*有大量免费地可添加宏集,协助你完成许多基本的 LATEX 未直接支持的排版任务。例如,支持在文档中插入 PostScript 图形的宏集和排版符合各类标准的参考文献的宏集,等等。The LATEX Companion [3]中给出了大量的宏集说明。
*LATEX 鼓励作者写作具有良好结构的文章,因为 L TEX就是通过详细地说明文章的结构来进行其排版工作的。
*TEX 作为 LATEX 的格式化引擎是免费软件,且具有极高的可移植性。因此,他几乎可以在任何硬件平台上运行。
缺点:
*对于出卖其灵魂的人来说,LATEX 不能很好的工作。
* 尽管在预先定义好的版面中可以调节一些参数,设计全新的版面还是很困难的,需要耗费大量的时间 。
*LATEX 不适合于排版非结构化的、无序的文档。
*即使有一个令人振奋的开始,但你也有可能无法完全掌握其精髓。
3、文档实例
文档中的空格和空白行:
空格和制表符都看作是space,多个连续的space视为一个space,每段开始的space被忽略。
1、首先是vim-latex插件的安装
去官方下载插件包
将其解压到~/.vim目录下,注意这里是将包文件加中的文件和文件夹放在.vim目录下。
追加~/.vimrc中
- " REQUIRED. This makes vim invoke Latex-Suite when you open a tex file.
- filetype plugin on
-
- " IMPORTANT: win32 users will need to have 'shellslash' set so that latex
- " can be called correctly.
- set shellslash
-
- " IMPORTANT: grep will sometimes skip displaying the file name if you
- " search in a singe file. This will confuse Latex-Suite. Set your grep
- " program to always generate a file-name.
- set grepprg=grep\ -nH\ $*
-
- " OPTIONAL: This enables automatic indentation as you type.
- filetype indent on
-
- " OPTIONAL: Starting with Vim 7, the filetype of empty .tex files defaults to
- " 'plaintex' instead of 'tex', which results in vim-latex not being loaded.
- " The following changes the default filetype back to 'tex':
- let g:tex_flavor='latex'
添加 ~/.vim/ftplugin/tex.vim中
- " this is mostly a matter of taste. but LaTeX looks good with just a bit
- " of indentation.
- set sw=2
- " TIP: if you write your \label's as \label{fig:something}, then if you
- " type in \ref{fig: and press <C-n> you will automatically cycle through
- " all the figure labels. Very useful!
- set iskeyword+=:
由于我是使用xelatex编译pdf文件,然后使用evince查看pdf文件,所以需要修改~/.vim/ftplugin/latex-suite/texrc文件
为了简单设置所有的TexLet g:Tex_DefaultTargetFormat = 'pdf'
设置所有的TexLet g:Tex_ViewRule_pdf = 'evince'
设置TexLet g:Tex_CompileRule_pdf = 'xelatex -interaction=nonstopmode $*'
重启vim即可。
常用快捷键
\ll 采用xelatex编译文档
\lv 使用evince预览生成的pdf文档
F5 插入数学公式环境,主要包括eqnarray,equation,align,$$
F7 插入引用,包括footnote,cite,pageref,label
shift+F5 变更插入环境
shift+F7 变更插入引用
下面就使用上面配置的环境来测试学习。
2、交叉引用
- \section{交叉引用}
- 24 This is a ref \label{sec:this} example.See section~ on the page~\pageref{sec:this}
3、强调
- \section{强调}
- 我的\emph{CSDN}博客地址:\underline{blog.csdn.net/yming0221}
4、数学公式
LaTeX最强大的功能就是编辑美丽的数学和物理等公式,你不会遇到word中公式变形或无法显示的问题,你也不会为了好的兼容性而插入一张图片来代替所要写的公式,即不方便也有伤大雅。
比如爱因斯坦的公式:
- \begin{equation}
- e=m\cdot c^2
- \end{equation}
编译结果如下:
- \section{数学公式}
- \begin{equation}
- e=m\cdot c^2 \;
- \end{equation}
- \begin{equation}
- \sum_{1}^{n} I_k=0 \;
- \end{equation}
- \begin{equation}
- I_D = I_F-I_R \;
- end{equation}
编译结果:
5、引号
双引号使用符号上半部分``,下半部分'',单引号是上半部分`,下半部分'
- \section{引号}
- ``Please press the `x' key''\\
6、破折号与连字符
[plain]
- \section{破折号}
- daughter-in-law\\
- pages 13--67\\
- yes---or no\\
- 0,1 and $-1$\\
7、~
- \section{~}
- www.csdn.net/\~{}Demo \newline
- www.csdn.net/$\sim$Demo \newline
后注:LaTeX的功能是在是太强大了,命令也实在是太多了,LaTaX的学习是循序渐进的过程,在使用过程在慢慢学习。
1.LaTeX文件的框架如下:
/documentclass{article}
/begin{document}
This is the body of the article
/end{document}
如果是中文,将/documentstyle{article}改为
/documentstyle{carticle}
第一句:/documentclass[选项]{类},确定整篇文章的处理格式,期刊或者会议论文一般可选类为article,再付上控制全局格式的选 项,比如字体、字号、页面格式、纸张大小等等。也有期刊直接提供类模板,比如 Lecture Notes in Computer Science,只要把相应的类名放到{类}里就OK了,不需要自己去费神。老版本此处使用/documentstyle。
接下来是包含一些使用的宏包来增强功能,/usepackage{宏包},宏包包含在.sty文件中,用过的宏包有:CJK 支持中文环境;times TIMES字体;graphicx 插图;pyperref引用超链接。也有期刊提供宏包来定制格式,比如 IEEE Computer Society Press。感觉就像C语言里的#include一样为第三方提供接口。有些提供的样例文件中在documentclass的选项中添加宏包,这是与老版 本兼容。
以上为导言区,接着余下的都是正文部分,包含在/begin{document}和/end{document}内。Latex命令的作用对象和范围和 HTML的标签有点类似,有开始和结束标志,开始位置内会定义一些表现格式。导言区还可能有/pagestyle{选项},页面样式,比如empty选项 表示没有页眉和页脚。导言区还有其它全局性的设置等。
正文部分首先是文章标题/title{标题},然后是作者信息/author{作者信息}。其中作者信息多行表示,用//断行,自动居中的。多个作者用/ and连接,自动按格式分列横排或者居中竖排。接着/maketitle表示本页为标题页,以便自动格式化。
接着是文章正文内容各部分了。摘要/begin{abstract}.../end{abstract}。章节为/section{第一层标题}, /subsection{第二层标题}。
再后面是参考文献部分,用过两个方法。第一个方法是手工逐条在正文尾部的/begin{thebibliography}{最大条数}... /end{thebibliography}内加入“/bibitem{关键词}文献信息”,文章中引用的地方用/cite{关键词},自动按加入的顺序 编号,形如[1]。第二个方法是使用bibTex。建立一个文献数据库文件:数据库名.bib,里面有按字段填写的文献信息,以及相应的“引用关键词”。 bibTex会生成.bbl文件,其中包含引用文献具体内容,在正文末尾用/bibliography{文献数据库名}包含该文件内容,注意文献数据库名 不能包含空格。文章中引用格式同前面的方法,文献数据库中被引用的文献按格式出现在文末,未被引用的文献可以使用/nocite{关键词}来使其出现在文 末。后一种方法的好处有:一、文献数据库可以共享;二、文献的内容与表现格式分离,内容填写更清晰,也可以更好的控制格式比如文献的排列顺序。格式控制是 在导言区加入/bibliographystyle{格式名},其中格式包含在.bst文件里,可以是Latex提供的,也可以是期刊单位提供的。
从结构上看,文章算排版结束了。下面就文章正文内容的一些细节留些注意点。
插图:使用graphics宏包很方便引用.eps格式图片,个人一般图片都是Matlab绘制图片,可以直接输出eps格式。特别地,PS的eps 不行。图片一般集中放当前目录下子目录中,使用子目录在导言中用/graphicspath{
{子目录名/}},这个里面的{}不能少,图片文件名被引用 时即可省略子目录名,指明.eps时效率高。
表格:表格单元都是由内容撑起的,可以使用 /rule[起始位置]{宽度}{高度}来撑起达到预期格式。rule定义的是一个矩形,起始位置指底线与当前行基准线的距离,负值表示底线在基准线下面。
插图、表格、公式都可以贴上各自自动编号的标签/label{关键词},引用时/ref{关键词}可以自动出现相应编号。
文章排版好了,输出文档需要注意几点。按照导言区格式设置,编译生成dvi作为中间预览基本不会有问题,但一般都需要最终pdf输出。
2.简单的规则:
(1)空格:Latex中空格不起作用。
(2)换行:用控制命令“//”,或“ /newline”.
(3)分段:用控制命令“/par” 或空出一行。
(4)换页:用控制命令“/newpage”或“/clearpage”
(5)特殊控制字符:#,$, %, &, - ,{, }, ^, ~
要想输出这些控制符用下列命令:
/# /$ /% /& /- /{ /} /^{} /~{} $/blackslash$表示“ /”.。
3.西文字符转换表
rm 罗马字体 /it 意大利字体
/bf 黑体 /sl 倾斜体
/sf 等线体 /sc 小体大写字母
/tt 打字机字体 /mit 数学斜体
4.字号转换命令表
点数(pt) 相应中文字号 控制命令
25 一号 /Huge
20 二号 /huge
17 三号 /LARGE
14 四号 /Large
12 小四号 /large
10 五号 /normalsize
9 小五号 /small
8 六号 /footnotesize
7 小六号 /scriptsize
5 七号 /tiny
5.纵向固定间距控制命令
/smallskip /medskip /bigskip
6.页面控制命令:
/textwidth=14.5cm
/textheight=21.5cm
系统默认:字号10pt= 五号字;西文字体为罗马字体;
textwidth=12.2cm,textheight=18.6cm。相当于美国标准信纸大小。
7.常见数学公式排版命令
(1)行中数学公式状态命令
/begin{math} 数学公式 /end{math}
简式1: /( 数学公式 /)
简式2: $ 数学公式 $
(2)独立数学公式状态命令
/begin{displaymath} 数学公式 /end{displaymath}
简式1: /[ 数学公式 /]
简式2:
(三)数学公式的编辑示例 数学公式中的各种字体: $$ /begin{array}{l} /mathrm{ABCDEFGHIJKLMNOPQRSTUVWXYZ}//%罗马字体 /mathtt{ABCDEFGHIJKLMNOPQRSTUVWXYZ}//%打字机字体 /mathbf{ABCDEFGHIJKLMNOPQRSTUVWXYZ}//%黑体 /mathsf{ABCDEFGHIJKLMNOPQRSTUVWXYZ}//%等线体 /mathit{ABCDEFGHIJKLMNOPQRSTUVWXYZ}//%意大利字体 /end{array} $$ 文中数学公式用$作为定界符,对于独立公式用$$作为定界符。上标用“^”,下标用“_”。 例如: $ x^{y^{z^{w}}}=(1+{/rm e}^{x})^{-2xy^{w}} $, $y_1'+y_2''+y_3'''$, Su$^{/rm per}_{/rm b}$script等等。 数学中花体字母”/cal”命令. 例如: $/cal {ABCDEFGHIJKLMNOPQRSTUVW}$ 下面是方程环境的控制命令:方程会自动加上序号(1).... /begin{equation} 0.3x+y/2=4z /end{equation} 求和与积分命令: /sumni=1xi=/int10f(x)/,/rmdx /sum1/lei/len/atop1/lej/lenaij $/sum/limits_{i=1}^{n} x_{i}=/int_{0}^{1}f(x)/, {/rm d}x $ $/oint $ 数学公式中省略号: $/cdots /ldots /vdots /ddots $ 求极限的命令: /limn/rightarrow/infty/sinxn=0 %n趋于无穷符号在lim正下方 $/lim_{n /rightarrow /infty}/sin x_{n}=0$ %趋于无穷符号在lim右下角 分式的排版命令: $$a_0+/frac 1{/displaystyle a_1 +/frac 1{/displaystyle a_2 +/frac 1{/displaystyle a_3 +/frac 1{/displaystyle a_4 +/frac 1{/displaystyle {a_5}}}}}}$$ 根式排版命令: x=/sqrt1+/sqrt1+/sqrt[n]1+/sqrt[m]1+xp x/pm=/frac−b/pm/sqrtb2−4ac2a 取模命令: $/gcd(m,n)=a/bmod b$ 矩阵排版命令: $$ /begin{array}{clcr} x+y+z & uv & a-b & 8// x+y & u+v & a & 88// x & 3u-vw & abc &888// /end{array} $$ $$/left ( /begin{array}{c} /left |/begin{array}{cc} a+b&b+c//c+d&d+a /end{array} /right |// y//z /end{array}/right ) $$ 数学符号的修饰: (1)上划线命令 /overline1+/overline1+/overlinex3 (2)下划线 /underline1+/underline1+/underlinex3 (3)卧式花括号命令 /overbracex+y+z+w /overbracea+b+/cdots+y+z26=/alpha+/beta (4)仰式花括号命令 a+/underbraceb+/cdots+y24+z (5)戴帽命令 /widehatA+B///widetildea+b /vec/imath+/vec/jmath=/veck (6)堆砌命令 y/stackrel/rmdef=f(x)/stackrelx/rightarrow0/rightarrowA (四)中英文LaTeX模板 (1)下面给出的是中文LaTeX2e模板,此时文件的扩展名为.ctx。模板中%后面的中文是中文注解,读者可以阅读这些模板中的中文注解,以理解所涉及的LaTeX2e命令的含义。 /documentclass[11pt]{ccart}%文件类说明 %还可以选择的类是cctbook /setlength{/parindent}{12pt} %自然段第一行的缩进量为12pt /setlength{/parskip}{10pt plus1pt minus1pt} %自然段之间的距离为10pt,并可在8pt到11pt之间变化 /setlength{/baselineskip}{8pt plus2pt minus1pt} %行间距为8pt,并可在7pt到10pt之间变化 /setlength{/textheight}{21true cm}%版面高为21厘米 /setlength{/textwidth}{14.5true cm}%版面宽为14.5厘米 /begin{document}%正文开始 /title{Thesis}%文章标题,双反斜杠// 表示换行 /author{author//Dept. of Math.} %作者名,单位,通信地址等,双反斜杠// 表示换行 /date{2003/8/5} %文章写作日期,如果省略此行,计算机日期作为写作日期 /maketitle%建立标题部分 %文章的正文输入 /begin{center}%参考文献的书写 {/heiti 参考文献} /end{center} /vskip 0.1cm /def/hang{/hangindent/parindent} /def/textindent#1{/indent/llap{#1/enspace}/ignorespaces} /def/re{/par/hang/textindent} /re{[1]} Nordhaus E,Stewart B,WhiteA.On the Maximum Genus of a Graph.{/it J.combinatorial Theory B},1971,11:258-267 /re{[2]} Skoviera M.The Maximum Genus of Graphs of Diameter Two.{/it Discrete Math}.1991, 87:175-180 /end{document}%源文件的结束 (2)英文LaTeX2e模板 /documentclass[11pt]{article}%文件类说明 %还可以选择的类是book,report /setlength{/parindent}{12pt} %自然段第一行的缩进量为12pt /setlength{/parskip}{10pt plus1pt minus1pt} %自然段之间的距离为10pt,并可在8pt到11pt之间变化 /setlength{/baselineskip}{8pt plus2pt minus1pt} %行间距为8pt,并可在7pt到10pt之间变化 /setlength{/textheight}{21true cm}%版面高为21厘米 /setlength{/textwidth}{14.5true cm}%版面宽为14.5厘米 /begin{document}%正文开始 /title{Thesis}%文章标题,双反斜杠// 表示换行 /author{author//Dept. of Math.} %作者名,单位,通信地址等,双反斜杠// 表示换行 /date{2003/8/5} %文章写作日期,如果省略此行,计算机日期作为写作日期 /maketitle%建立标题部分 %文章的正文输入 /section{Introduction}%第一节 引言(机器自动编号) {/bf Theorem 1.} {/it For any fixed $/rho>0$, we have $$||R(u,/rho)||/leq ||R_1(u,/rho)||/leq 2||R(u,/rho)||,~~~/forall u/in H. /eqno(10)$$ Hence, (2) and (3) are equivalent for any fixed$/rho>0$.} %一般定理的写法 {/bf Proof.} /begin{thebibliography}{99} /bibitem{Kind} D. Kinderlehrer and G. Stampacchia, {/it An Introduction to Variational Inequalities and Their Applications}, Academic Press,New York, (1980). /end{thebibliography}%参考文献 /end{document}%源文件的结束 (五)疑难解析 1.问题:如何生成ps(PostScript)文件? 回答: 方法有二 (1)用dvips这个工具,在WinEdt编辑器中专门有一个按钮; (2)如果使用windows系统的话,在打印机中安装HP LaserJet 4/4M PostScript的驱动程序。在浏览DVI文件的时候,打印到文件就可以了。文件是保存为*.prn的,您只要改他为*.ps就可以了。 2.问题: 如何插入图象? 回答:我知道的方法有, (1)使用emtex下的img2cct.exe工具。 首先将图象改变为单色BMP,用画笔就可以做这件事情,提醒在保存的时候一定要存为单色图。例如有单色BMP文件test.bmp,然后执行命 令:img2cct test.bmp -t3 -c0 具体img2cct的参数,可以直接执行"img2cct.exe"来查看,最后将img2cct.exe生成的test.tex文件的代码拷贝到您的文 章中,适当调整位置,就可以了。 (2)使用 Scientific WorkPlace(Word) 的用户,只要菜单上File/Import Picture功能就行。 (3)利用绘图软件LaTeXCAD,可直接将图变成LaTeX语言。 (4)利用软件将图象格式另存为ps格式。 /usepackage{graphicx} /begin{document} /includegraphics{your.ps} /end{document} 3.问题:现在很多文章的定理,定义,推论, 例子都采用统一编号,不再是独立编号,如定义1.1,接下来可能是定理1.2,然后推论1.3怎么做一个总的框架环境,实现这种自动的编号呢? 回答:/newtheorem{athm}{/heiti /t}[section] /newenvironment{thm} [1] {/def/t{#1} /begin{athm} /fangsong /rm} {/end {athm}} 正文中如下使用即可: /begin{thm}{定义} /end{thm} 或 begin{thm}{定理} /end{thm} 等等. 4.问题:在公式或定理,定义编号上,我不想按原来的格式,如定理4.2,而想用 定理4.1.2. 或者就直接定理123, 怎么作修改? 回答: 用/renewcommand重新定义一下标号就可以了. /renewcommand {/theequation} {/arabic{chapter}. /arabic{section}./arabic{eqation} 重新定义后标号就成了4.1.2这样的了.(在article风格中是section和subsection) 5.问题:怎么使用不同的字号和字体?(中英文),怎么使用双页?(就象书那样) /documentstyle后面的选项和格式都有什么? 回答:(1)关于字号,你如果是想改通篇文章的字号.最简单的方法是将第一句/documentstyle[选项]{格式} 中的选项作修改。 (选项有...,9pt,10pt(默认),11pt,...;twoside,twocolumn,proc,oneside(默认); leqno(默认),fleqn,epsf. 格式有book,report,article,letter;cbook,carticle,...) (2)如想选用双页,就用twoside,(cbook默认就是twoside,页码在上面,章的首页页码在下。 (3)在正文某处想改字号大小, 英文用/tiny, /scriptsize, /footnotesize, /small, /normalize,/large, /Large, /LARGE, /huge, /Huge; 中文用 /zihao{n} 此处n可取值: 0(初号),1(一号),2(二号),3(三号),4(四号),-4(小四),5,-5,6,7等。 (4)关于字体, 英文常用的: /bf黑体, /rm罗马, /sl斜体, /cal花体, /sc, /it公式缺省, /sf等线体。中文常用: /songti, /kaishu, /heiti, /fangsong, /biaosong,。 5.问题:LaTeX 如何生成目录? 回答:1.最好自己定义目录形式,美观方便,下面是定义好的几个,你不妨试试 (1)/def/mlA#1#2#3{/par/noindent/hspace*{1 true cm}/parbox[b]{12.3 true cm} {/protect/hspace*{-1 true cm}{#1}/quad{#2}~/dotfill~} /hbox to1.0 true cm{~(/hss#3/hss)}/vspace{2mm}} (2)/def/mlB#1#2#3{/par/noindent/hspace*{1 true cm}/parbox[b]{12.3 true cm} {/protect/hspace*{-1 true cm}{#1}~/dotfill~/hbox{#2}} /hbox to1.0 true cm{~(/hss#3/hss)}/vspace{2mm}} (3)/def/mlC#1#2{/par/noindent/hspace*{1 true cm}/parbox[b]{12.3 true cm} {/protect/hspace*{-1 true cm}/quad{#1}~/dotfill~} /hbox to1.0 true cm{~(/hss#2/hss)}/vspace{2mm}} (4)/def/mlD#1#2{/par/noindent/hspace*{1 true cm}/parbox[b]{12.3 true cm} {/protect/hspace*{-1 true cm}/quad{#1}~/hfill~} /hbox to1.0 true cm{~(/hss#2/hss)}/vspace{2mm}} 2.使用方法如下: /mlA{title}{author}{page no.} 效果: title author .................. (page no.) /mlB{title}{author}{page no.} 效果:title .......................... author (page no.) /mlC{title}{page no.} 效果: title ......................... (page no.) /mlD{title}{page no.} 效果: title (page no.) 6.问题:LaTeX中如何使公式编号具有(1.2)这种格式? 回答:/documentclass{article} /usepackage{amsmath} /numberwithin{equation}{section} /begin{document} /section{my section} /begin{equation} x^2+y^2=1 /end{equation} /end{document}