Latex 附录生成方法-附使用的一些tips

时间:2024-03-10 14:51:29

Latex 附录生成方法-附使用的一些tips

 

工具

使用latex写论文时,国内科研人员使用比较多的前端工具当属CTex,另外的前度工具有texstdio,texworks,sublime,甚至vim。ctex软件可免费下载:http://www.ctex.org/HomePage   里面的WinEdit确实是很好用(收费软件)。编译的内核是MikTex

Linux上,可以使用texmaker,还是不错的。

一些使用心得:

插入图片。在Latex中,图片是以文件的方式嵌入到文档当中,在转换为pdf或者ps文件的时候才会嵌入到文件中,否则都是单独存在的。插入图片的基本命令:

1 /begin{figure}
2 /centering
3 /includegraphics[width=0.6/textwidth]{file/vcrouter}
4 /caption{Internal structure of a VC router}/label{fig:vcrouter}
5 /end{figure}

 

/begin{figure}和/end{figure}中间是图片的命令。/centering之后的所有内容居中。 /includegraphics插入图片,width=0.6/textwidth说明图片的宽度为0.6倍页宽,文件名是 file/vcrouter,用latex编译自动搜索后缀为eps的图像,pdflatex编译自动搜索后缀为pdf的文件。/caption说明该图 片的标题,/label给出一个标签,文中则可以使用/ref{}进行连接。插入图片需要加载/usepackage{graphicx}。

插入多幅图片并包含子图的图片:

1 /begin{figure}[ht]
2 /centering /subfigure[A bundled-data channel]{
3     /includegraphics[width=0.30/textwidth]{file/bundleddata}/label{fig:bundleddata}}
4 /hspace{0.1/textwidth} /subfigure[The 4-phase bundled-data
5 protocol]{
6     /includegraphics[width=0.4/textwidth]{file/4phasebundled}/label{fig:4phasebundled}}
7 /caption{The 4-phase bundled-data protocol}/label{fig:4pb}
8 /end{figure}

 

这是一个两个子图水平并列的例子。在/begin{figure}后添加[ht]说明以水平table的形式排布,当然也可以使用tabular,不过麻烦一些。使用/includegraphics需要加载/usepackage{subfigure}。

公式编辑。其实可以使用公式编辑器。MathType 5.0以上,在perferences菜单里的translators选择translate to other languages,然后选择latex。之后,用公式编辑器编辑的公司可以直接用选择和复制放到latex文件当中。

如果公式需要加编号,使用/begin{equation}和/end{equation}就能自动添加编号。不过最好加载 /usepackage{amsmath}。另外,默认公式是居中的,如果需要改成靠左缩进的方式,在/documentclass[fleqn] {firstyearreport}添加这个fleqn选择参数。

参考文献最好使用bibtex管理。管理的软件可以使用Endnote,不过我用的是jabref,一个开源软件,还是很好用的。只要 写上/bibliography{file/reference},这里的file/reference说明参考文献是file /reference.bib文件,所有的参考文献就可以自动加载。关于参考文献的风格,我使用的 是/bibliographystyle{alpha},以作者的第一字母和年代为标号。但是还有很多其他的方式,可以参考这个网站:http://www.cs.stir.ac.uk/~kjt/software/latex/showbst.html

图片格式是一个很烦人的问题。最基本的图片格式是eps,尽管现在pdflatex支持pdf和jpeg,png等等,但是我还是认为eps比较好。eps是矢量图,没有图像失真。用eps转换成的pdf放大多少都没有问题,体积也很小。

但是,支持eps的软件并不多。在windows上,我们最习惯的是Visio画图,但是visio对eps基本上没有支持。网上有很多将visio的图转化成eps的图的方法,但是很多都很麻烦。我现在终于找到了一种比较好的方式。

首先安装一个postscript的虚拟打印机,http://www.adobe.com/support/downloads/detail.jsp?ftpID=1502 。然后用visio将图片用postscript打成prn或者ps文件。用CTex自带的GSview打开该文件(没有也没关系,下一个:http://pages.cs.wisc.edu/~ghost/ ),file菜单中有一个ps to eps,哈哈,自动转换边界,就变成eps文件了,而且是矢量的。

还有一个问题,pdflatex偏偏是不支持eps文件,默认是pdf文件。使用pdflatex时,如果没有pdf文件会报错。有人说使 用/usepackage{epstopdf}可以解决该问题,eps文件会自动在编译时变为pdf文件,但是在windows上的使用结果很糟 糕,eps文件没有自动转换边界,按A4打印,结果很难看。

其实加载/usepackage{epstopdf},就是使用epstopdf命令转换eps文件。但是在windows系统中的 epstopdf命令好像不能自动转换边界,但是linux系统上的epstopdf是好的。所以我建议使用linux系统上的epstopdf命令转 化,是会自动转化边界的。

不过大批的文件一个一个去手动转化还是很麻烦,我就写了一个makefile文件,假设所有的eps文件都在一个文件夹下,那么make all一下,就能自动转化为pdf文件。知道我在说什么吧,呵呵。Makefile的内容如下:

 1 clean:
 2         rm -f *.pdf
 3 
 4 eps_file = $(wildcard *.eps)
 5 
 6 pdf_file = $(eps_file:%.eps=%.pdf)
 7 
 8 $(pdf_file): %.pdf : %.eps
 9         epstopdf $<
10 
11 all: $(pdf_file)
12 
13 show: 
14         echo $(pdf_file)

 

伪代码

伪代码有时候还是要用的,对于复杂的算法,直接写伪代码有时候更容易懂。关于伪代码有一个包algorithms,需要加 载/usepackage{algorithm}和/usepackage{algorithmic},具体用法可以直接看他的帮助,在下载的压缩包中的 doc目录下。下载路径:http://www.ctan.org/tex-archive/help/Catalogue/entries/algorithms.html 忘了说了,所有Latex相关的文件找不到,或者需要最新版,请查询www.ctan.org .


 

附录

需要插入附录的话,下面的命令会很有用

\appendix
\appendixpage
\addappheadtotoc

/appendix说明之后的内容为附录,/appendixpage将添加一个专门的附录页,/addappheadtotoc将附录添 加到目录当中,需要加载\usepackage{appendix}。不过,一旦附录开始,将不能转回正文。另一种方式可以使用 /begin{appendices}和/end{appendices}在正文中添加附录,参看http://www.tex.ac.uk/cgi-bin/texfaq2html?label=appendix

关于文档中的引用链接和生成pdf的链接目录,只能使用pdflatex。方法是加载/usepackage{hyperref},所有链接自动生成。

关于所有的latex相关的命令,有一本手册(书)http://tobi.oetiker.ch/lshort/lshort.pdf ,好像有中文的翻译版本 http://net.ytu.edu.cn/share/%D7%CA%C1%CF/lshort-cn.pdf

 

 

==========================================

相关链接:

Latex 使用心得

Latex参考文献技巧(Latex编辑部)

Latex参考文献FAQ

LaTeX 参考文献的处理

文献管理软件 JabRef 入门简介

Latex之Natbib中文说明

latex+bibtex+jabref