我们已有10年以上LaTeX排版经验,专业服务,平民价格;
与Office办公有关的我们都可以代劳,量身定制,专业水准;我们经过多年的积累,服务于上千家科研机构、公司、教育培训机构年处理排版书籍上万本,累计处理的文字可绕地球⊙﹏⊙,我也不知道能不能绕的过去;繁琐与轻松之间,有时只有一步之遥,解放自己,不差这一步;
和MicrosoftOfficeWord等所见即所得的办公软件不同,用LATEX排版文档,首先要用文本编辑器编辑好tex文档,然后通过各种程序编译,得到pdf文档用于打印或者阅读。基本的排版流程如下图:
一般我们经常用pdflatex或者xelatex程序直接从tex文件生成pdf文件。如果是中文tex文档,优先使用xelatex程序编译。
TeXworks是在TUG(TeXUsersGroup)的支持下开发的一个全新的TeX/LaTeX编辑器。它的首要特点如下:自带了一个pdf浏览器,编辑latex文件时可以迅速预览排版后的pdf文件;还有就是它的设计目标是简单易用,所以只支持直接生成并预览pdf,避免dvi,ps,pdf各种文件格式对初学者的干扰。
TeXWorks支持命令补全(commandcompletion)。使用方法是在输入若干字母后按Shift+Tab(或Ctrl+Tab)。比如,输入i之后按Ctrl+Tab就会变成\item。如果有几种可能的补全方式,多按次就会在这几种方式之间循环,按Ctrl+Tab和按Shift+Tab循环方向相反。
①插入图片
a.大小写敏感
b.设置编辑区代码行数:View->LineNumbers(或Ctrl+=);
c.WinEdt中的环境(
\begin{}...\end{}\begin{}...\end{}
)自动补足功能。以
...(1)(1)...
d.编辑区左侧的小箭头将这行代码转到PDF文件对应的区域
相比较,WinEdt功能更强,且无缝整合LaTex,选择WinEdt作为编辑器。当然除了TeXWorks、WinEdt,还有很多其他的软件,此处不再介绍。
%hello.tex\documentclass[a4paper]{article}\usepackage{hyperref}\begin{document}HelloWorld!\end{document}①%符号后面的内容都表示注释
②在LATEX文档中,用\开始的字母串来表示一个命令。命令后面用花括号{}包含的内容是该命令的参数,必不可少。
③这里的\documentclass是LATEX文档的基本命令,用于指明文档类。\documentclass[选项]{文档类}
文档类
文档类的选项
字体大小(10pt,11pt,12pt):默认为10pt。
纸张方向(portrait,landscape):默认为portrait(纵向),在屏幕阅读也许landscape(横向)更方便。
草稿定稿(draft,final):默认为final(定稿);如果是draft(草稿),页面内容有溢出时会显示粗黑条。
单面双面(oneside,twoside):对于article和report文档类,默认设置为单面,页码总是在右边;对于book文档类,默认设置为双面,奇数页页码在右边,偶数页页码在左边,这样双面打印时页码总在外侧。
新章开始(openright,openany):仅对book文档类有效,默认值为openright,即每章都从奇数页开始;如果设置为openany,则每章仅从新的一页开始,不管奇偶页。
④\usepackage命令也是LATEX的基本命令,用于载入LATEX宏包。LATEX系统中包含了各种各样的宏包,对LATEX的基本功能作了各种扩展。
⑤
⑥LaTeX的命令也有不同的类型,形如
LATEX文档把格式和内容部分分开,是一种良好的设计准则。
LaTeX中文文档的排版有各种方式,例如CCT,CJK,xeCJK等等。目前最优秀的方式是用ctex文档类来排版中文文档,它在其它各种方式的基础上以一致的方式解决了中文排版的问题。例如:
\documentclass[UTF8]{ctexart}\begin{document}中文内容测试!\end{document}使用这种方式,只需要将文档类从英文的article改成ctexart,所有中文环境和章节编号等等都已经按照中文习惯设置好了,简单易行。另外,对于book和report文档类,也有对应的ctexbook和ctexrep中文文档类,其用法类似。
例子中的UTF8这个可选参数指明了中文文档的编码。编码主要有这两种:GBK和UTF8,而不同的LaTeX编辑器对中文文档的默认编码不同。WinEdt编辑器的默认中文编码为GBK,而TeXworks编辑器的默认中文编码为UTF8。
输入
\#
$
\%
\&
\{
\}
\_
\^{}
\~{}
\textless
\textgreater
\textbar
\textbackslash
输出
#
%
&
{
}
_
^
~
<
>
|
\
列表环境有三种:无序列表(itemize)、有序列表(enumerate)和描述列表(description)。使用⑥的图标,自动生成代码。
\documentclass[UTF8]{ctexart}
\begin{document}
\begin{itemize}
\itemjavascript
\itemhtml
\itemcss
\end{itemize}
\begin{enumerate}
\end{enumerate}
\begin{description}
\item[javascript]javascript
\item[html]html
\item[css]css
\end{description}
\end{document}
显示效果如下:
\title{Latex与Winedt}
\author{jingwhale}
\date{January25,2015}
\maketitle
\begin{abstract}
\end{abstract}
如果\date{}命令的参数为空,则不显示日期信息。如果不出现\date命令,则默认显示当前的日期。
在book和report文档类中,可以使用\part、\chapter、\section、\subsection、\subsubsection、\paragraph、\subparagraph这些章节命令,在article文档类中,除了\chapter不能用,其它的都可以用。
用\tableofcontents命令可以自动从各章节标题生成目录。
\documentclass[UTF8]{ctexart}\usepackage{hyperref}\begin{document}\tableofcontents\part{部分标题}%\chapter{章标题}这一章我们介绍这些内容。\section{节标题}这一节我们介绍这些内容。\subsection{小节标题}这一小节我们介绍这些内容。\subsubsection{子节标题}这一子节我们介绍这些内容。\paragraph{段标题}这一段我们介绍这些内容。\subparagraph{小段标题}这一小段我们介绍这些内容。\end{document}
要调整章节标题在目录页中的格式,可以用titletoc宏包。该宏包的基本命令参数如下:
\titlecontents{标题层次}[左间距]{整体格式}{标题序号}{标题内容}{指引线和页码}[下间距]6.参考文献引用文献的基本环境是:
\begin{thebibliography}{}\bibitem[显示符号]{引用标签}BookTitle,Author\end{thebibliography}其中\begin{thebibliography}{}的大括号内填入的数字表示最大标号值。\bibitem表示一条文献记录。其中[显示符号]表示在参考文献区域显示的标号,可不填,默认使用数字1,2,3进行编号。引用标签则是在正文中引用的标签。参考文献的引用和其他的引用有点不同,需要用\cite{引用标签}来引用。
在LaTeX中使用参考文献很容易,代码如下:
\documentclass[UTF8]{ctexart}\begin{document}\begin{thebibliography}{123456}\bibitem{JW1}Jingwhale,T.A.O.C.P.,YunlongZhang,2015,Vol.1.\bibitem{JW2}Jingwhale,T.A.O.C.P.,YunlongZhang,2015,Vol.6.\bibitem{JW2}Jingwhale,T.A.O.C.P.,YunlongZhang,2015,Vol.8.\end{thebibliography}\end{document}显示效果如下:
插入表格经常使用的是tabular环境,这个环境是LaTeX中预先定义好的。
在WinEdt中点击,选择Tabular,选择3行3列表格,代码如下:
\begin{tabular}{||||}\hline%after\\:\hlineor\cline{col1-col2}\cline{col3-col4}...&&\\&&\\&&\\\hline\end{tabular}
我们修改代码如下:
\documentclass[UTF8]{ctexart}\begin{document}\begin{tabular}{|l|c|r|}\hline%after\\:\hlineor\cline{col1-col2}\cline{col3-col4}...左列&中列&右列\\\hline2行1列&2行2列&2行3列\\\hline3行1列&3行2列&3行3列\\\hline4行1列&4行2列&4行3列\\\hline\end{tabular}\end{document}显示效果如下:
复杂的表格经常需要跨行和跨列,在tabular环境中,我们可以用命令\multicolumn得到跨列表格,而跨行表格需要使用multirow宏包,我们暂不介绍。
\documentclass[UTF8]{ctexart}\begin{document}\begin{tabular}{|l|c|r|}\hline%after\\:\hlineor\cline{col1-col2}\cline{col3-col4}...左列&中列&右列\\\hline2行1列&2行2列&2行3列\\\hline\multicolumn{2}{|c|}{跨越2015}&3行3列\\\hline4行1列&4行2列&4行3列\\\hline\end{tabular}显示效果如下:\end{document}
\multicolumn命令的第一个参数指明要横跨的列数,第二个参数指明对齐和边框线,第三个参数指明该单元格的内容。
前面所说的插入表格的例子中,表格是在tabular环境对应的位置排版出来的。如果表格高度大于当前页剩余高度,表格就会被放置到下一页中,造成这一页下部留出很大空白。大部分时候我们并不需要严格限定表格出现的位置,而只要求表格在该段正文的附近出现即可。此时,我们可以用table浮动环境来达到自动调整位置的效果。
我们只需,在WinEdt中点击,代码如下:
\begin{table}\centering\caption{}\label{}
将表格代码插进去就行了,示例代码如下:
\documentclass[UTF8]{ctexart}\begin{document}\begin{table}[htbp!]\centering\begin{tabular}{|l|c|r|}\hline%after\\:\hlineor\cline{col1-col2}\cline{col3-col4}...左列&中列&右列\\\hline2行1列&2行2列&2行3列\\\hline3行1列&3行2列&3行3列\\\hline4行1列&4行2列&4行3列\\\hline\end{tabular}\caption{示例表格}\label{we}\end{table}\end{document}其中的可选参数里,h(here,当前位置)、t(top,页面顶部)、b(bottom,页面底部)、p(page,单独一页)表明允许将表格放置在哪些位置,而!表示不管某些浮动的限制。用table浮动环境,还可以用\caption命令指明表格的名称,并得到表格的自动编号。
在LATEX文档中插入现有的图形,可以使用graphics。我们这里只介绍graphicx宏包。需要载入graphicx宏包
\usepackage{graphicx}①.图文混排。命令:\includegraphics[选项]{图形文件}。如下的代码:
如果插入的图片需要独立居中显示。这可以通过把插入的图片放在center环境中来实现。如下面的代码:
图片最好设置宽和高,让它按照我们的约定显示。图片的伸缩因子需要计算有些麻烦,如果将它设为页芯宽度\textwidth的某个因子,如\includegraphics[width=0.9\textwidth]{picture/tupian.jpg},图片将页芯宽度显示。
同表格的插入情形类似,自动调整图片的位置。用figure浮动环境来达到这个效果。
在WinEdt中点击,出现代码代码如下:
\begin{figure}\centering%Requires\usepackage{graphicx}\includegraphics[width=]{}\\\caption{}\label{}\end{figure}修改代码如下:
\documentclass[UTF8]{ctexart}\usepackage{graphicx}\begin{document}和MicrosoftOfficeWord等所见即所得的办公软件不同,用\begin{figure}[h]\centering%Requires\usepackage{graphicx}\includegraphics{picture/tupian.jpg}\\\caption{latex}\end{figure}排版文档,首先要用文本编辑器编辑好tex文档,然后通过各种程序编译,得到pdf文档用于打印或者阅读。\end{document}显示效果如下:
在LATEX中,数学公式有两种:即行内公式(inlineformula)和行间公式(displayedformula)。
行内公式和正文在同一行中显示,示例如下:
、
行间公式在单独一行居中显示,示例如下:
用
$$x_1+y_1>z_1\eqno{(1)}$$另外,我们可以用equation环境来得到自动编号的行间公式。例如:
\begin{equation}x^n+y^n=z^n\end{equation}显示效果如下:
点击WinEdt的,选择你要编辑的公式或符号,进行编辑即可,示例如下:
\[\int\frac{1}{x}dx=\ln|x|+C\]
我们可以用\left和\right命令来得到自动调整大小的括号,例如
自动调整大小的括号有时候效果仍然差强人意,这时候你也可以自己指定括号的大小:
\[\Bigg<\bigg\{\Big[\big(xyz\big)\Big]\bigg\}\Bigg>\]注意:{和}是特殊字符,需要用\{和\}来表示。
要方便地输入多行公式,可以使用美国数学会的amsmath宏包
\usepackage{amsmath}
得到对齐的公式,用align环境。例如:
\begin{align}x+y&=5\\2x+3y&=8\end{align}其中&符号后面的字符就是各行间对齐的位置。
各行之间是不对齐的,可以用gather环境的多行公式里面,
\begin{gather}x+y=5\\2x+3y=8\end{gather}前面两个环境中的多行公式都是自动编号的。如果不要编号,可以用对应的gather*和align*环境。将{}修改为对应的gather*和align*即可。
一个公式太长需要拆为几行,这种折行公式应该只需要一个编号,可以使用equation环境中的\split环境。例如:
⑥复杂公式
\documentclass{article}\usepackage{amsmath}\begin{document}\begin{equation}\left.\begin{aligned}x+y&>5\\y-y&>11\end{aligned}\\right\}\Rightarrowx^2-y^2>55\end{equation}\end{document}
定理命题的撰写的简单例子:
\newtheorem{thm}{Theorem}[subsection]\newtheorem{cor}[thm]{Corollary}\begin{thm}Thisisatheorem.\end{thm}\begin{cor}Thisisacorollary.\end{cor}
这里的例子是对于article文档类来说的,如果是book文档类,最前面的subsection应改为section。
传统的方法有两种:一是用CJK宏包,二是用CCT宏包。这里先介绍CJK的中文排版。
CJK是国外人编写的,不仅支持中文,而且也支持其它双字节语言(实际上CJK就是Chinese,Japanese和Korean这三个词语的缩写)。安装之后就可使用。
\documentclass{article}\usepackage{CJK}%\begin{document}\begin{CJK}{GBK}{song}CTeX里中文默认用宋体!\CJKfamily}{GBK}{hei}这是CTeX里的黑体!\CJKfamily{fs}这是CTeX里的仿宋体!\CJKfamily{kai}这是CTeX里的楷体!\CJKfamily{li}这是CTeX里的隶书!\CJKfamily{you}这是CTeX里的幼圆体!\end{CJK}\end{document}
CCT和CJK就是两种外挂而已,很容易就出现比如pdf书签乱码之类的问题。XeTeX和LuaTeX从底端就支持各种文字包括中文,而且能够直接使用系统自带的字体,生成的文档更为美观。本文介绍用XeTeX排版LaTeX文档的方法。
XeTeX对TeX的改动主要集中在字体的使用上,因此原来的LaTeX文档稍为修改下就能够用XeTeX编译了。最新的MiKTeX(CTeX)和TeXLive套装都包含XeTeX程序。示例如下:
然后使用xelatex编译,就得到一个中文文档了。当然里面还有很多细节要注意。
在LaTeX中可以用各种命令来改变文本字体的大小,它的实际大小和文档类的正常字体大小(即\normalsize的大小)设置有关。在代码里,直接添加字体命令即可。
在LaTeX中,可以用center环境得到居中的文本段落,其中可以用\\换行。例如:
可以用flushleft和flushright环境分别得到向左对齐和向右对齐的文本段落。例如:
现在我们来说说如何定制页面的布局,比如正文区域的宽度和高度,和各个边距的大小。LATEX中一般推荐用geometry宏包来调整页面的布局。例如本文档(页面为B5纸张大小)的页面布局就是用如下的代码设定的:
\usepackage[text={125mm,195mm},centering]{geometry}其中的geometry包的text={width,height}选项指明了页面正文区域的宽度和高度大小,而后面的centering选项表示将正文区域自动居中(即上下边距相等,而且左右边距也相等)。
本节以清华大学论文模板为例,主要是通过学习模板总结如何去做。
thuthesis.cls和thuthesis.cfg可由thuthesis.ins和thuthesis.dtx生成。
思想:让形式与内容分离,这也是前端的思想。
①最主要的就是写宏。
建立figures用于存储图片
建立ref存放参考文献
③建立main.tex,调用之前写的宏,写论文,引用相应的数据到相应的区块。