这一篇主要记录自己常用的一些LaTeX的操作,包括常用的一些格式,下一节LaTeX文章主要为数学公式及图表的内容.
文档类型
一般来说,我们写TeX文档时,第一句命令就是文档类型的命令.
文档类型主要有 article,report,book,beamer,还有用于中文排版的ctexart,ctexrep,ctexbook分别对应article,report,book.用于排版中文的文类可以不用再调用ctex宏包直接使用中文.而且文档中的图,表,日期等都是中文显示.一般写一些课程小论文用ctexart就可以.
标题页
LaTeX中提供了一组题名的命令,可以用于生成标题页的题名,作者,日期等内容.
以下命令写在导言区中.
1 2 3
| \title{论文}%论文题名 \author{作者}%作者姓名 %\date{}%日期
|
如果不设置日期,将默认是今天的日期.
在正文中
将会自动生成默认格式的标题页
一般写一些课内小论文之类的直接用默认格式,如果要写论文或是毕业论文之类比较正式的文档就可以使用模板.
1
| \thanks{}%添加脚注,对题名的说明或是作者简介之类.
|
article默认题名与正文相连,不单独设页,book,report则会创建单独的一页.
摘要
一般在正文前都有摘要,在文档类article,ctexart中都提供了摘要环境
1 2 3
| \begin{abstract} 内容 \end{abstract}
|
该环境会默认生成粗体字居中的摘要标题.
目录
在正文之前使用命令
就可以生成默认格式的目录,如果对默认的目录格式不满意可以使用titletoc宏包修改目录的格式.
目录格式命令
1
| \titlecontents{标题名}[左间距]{标题格式}{标题标志}{无序号标题}{指引线与页码}[下间距]
|
下面是我使用的目录页设置命令
1 2 3 4 5 6
| \titlecontents{section}[0em]{\zihao{4}\bf }{\thecontentslabel\ }{} {\hspace{.5em}\titlerule*[4pt]{$\cdot$}\contentspage} \titlecontents{subsection}[2em]{\vspace{0.1\baselineskip}\zihao{-4}}{\thecontentslabel\ }{} {\hspace{.5em}\titlerule*[4pt]{$\cdot$}\contentspage} \titlecontents{subsubsection}[4em]{\vspace{0.1\baselineskip}\zihao{-4}}{\thecontentslabel\ }{} {\hspace{.5em}\titlerule*[4pt]{$\cdot$}\contentspage}
|
页眉页脚
LaTeX中有4种页眉页脚的版式
- empty 页眉页脚都空置
- plain 页眉空置,页脚中间是页码,无页脚线
- headings 偶数页页眉左端是页码,右端是章标题;奇数页页眉的右端是页码,左端是节标题,是book类的默认格式
- myheadings 格式与headings基本相同,左页页眉的右端和右页页眉的左端空置
使用命令\pagestyle{}设置版式,使用\thispagestyle{}设置当前页的格式,页码一般从正文开始,所以正文前的页一般要设置为empty版式,
如果需要自己设置页码页眉的格式可以用fancyhdr宏包.
1 2 3
| \fancyhead[参数]{页眉内容} \fancyfoot[参数]{页眉内容} %参数选项可以为EL,EC,ER,OL,OC,OR其中E代表左页,O代表右页,L,C,R分别代表左,中,右
|
目录页的设置可以参考这里
代码环境
需使用listings宏包,使用lstset在导言区配置,
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19
| \lstset{ numbers=left, frame=tb, aboveskip=3mm, belowskip=3mm, showstringspaces=false, columns=flexible, framerule=1pt, rulecolor=\color{gray!35}, backgroundcolor=\color{gray!5}, basicstyle={\ttfamily}, numberstyle=\tiny\color{gray}, keywordstyle=\color{blue}, commentstyle=\color{dkgreen}, stringstyle=\color{mauve}, breaklines=true, breakatwhitespace=true, tabsize=3, }
|
以上是我的代码环境设置,可以参考.
在需要插入代码的时候
1 2 3 4 5 6 7 8 9
| \begin{lstlisting}[language=C++,escapeinside=``] #include<iostream> using namespace std; int main { cout<<"Hello world!"<<endl; return 0; } \end{lstlisting}
|
其中如果需要使用中文需要逃逸环境.
显示效果如下:
其他一些想到的
geometry宏包可以改变页边距
使用如下:
1
| \usepackage[a4paper,left=cm,right=cm,top=cm,bottom=cm]{geometry}
|
脚注:
间距调整
1 2
| \vspace{1cm}%水平间距调整 \vskip 7cm %垂直间距调整
|