LaTeX in 24 Hours - 3. Formatting Texts I
文章目录
- 本章内容:文本格式 I
- 3.1 Sectional Units
- 3.2 Labeling and Referring Numbered Items
- 3.3 Texts Alignment
- 3.4 Quoted Texts
- 3.5 New Lines and Paragraphs
- 3.6 Creating and Filling Blank Space
- 3.7 Producing Dashed Within Texts
- 3.8 Preventing Line Break
- 3.9 Adjusting Blank Space After a Period Mark
- 3.10 Hyphenating a Word
其他章节目录:
https://www.cnblogs.com/dansz/p/12819112.html
本章内容:文本格式 I
3.1 Sectional Units
生成章节的命令如下:
| 命令 | 作用 | 例子 |
|---|---|---|
| \chapter{} | 章 | \Chapter{Title} |
| \section{} | 节 | \section{Texts} |
| \subsection{} | 子节 | \subsection{Texts} |
| \subsubsection{} | 子节的子节 | \subsubsection{Texts} |
| \paragraph{} | 段落 | \paragraph{Texts} |
| \subparagraph{} | 子段落 | \subparagraph{Texts} |
注意:命令有先后顺序,应该正确地嵌套使用。比如:\section{}后面是\subsection{};\paragraph{}后面是\subsection{}。下图是标题序号的格式:

解释:
- 当文档类型是报告或者书籍的时候,文档包含有chapter,这个时候标题编号仅对chapter{}, section{},和subsection{}有用,即使使用了subsubsection{},这个标题也不会有编号。
- 当文档类型是文章的时候,仅包含节和段落,只有节有编号
重点:
有些标题有时候我们不需要编号,例如前言,附录,参考文献等等。这个时候我们可以添加星号表示该标题不添加序号:\chapter*{}, \section*{}, \subsection*{} 和\seubsubsection*{}.
3.2 Labeling and Referring Numbered Items

注意:rkey是唯一关键字,引用和标签对应即可。另标签仅对有编号的标题有用。
- 标签 - \label{ rkey}
- 引用 - \ref{ rkey}
- 引用页码 - \pageref{}
CG is defined on page \pageref { sec:cg }
如果被引用对象是在同一页,最好用“on this page”。 - \vref{}
\vref{}通常会同时执行\ref{}和\pageref{}。- 当标签和引用在同一页时,仅执行\ref{}
- 当标签和引用相差一页时,除了执行\ref{},还会生成:“on the facing page”,“on the preceding page”或者"on the next page"。
- 当标签和引用差距超过一页,则同时执行\ref{}和pageref{}.
例子: ‘quoted texts are discussed in \S\vref { sec:quote }’
结果: ‘quoted texts are discussed in §3.4 on the next page’。
- \vpageref{}
\vpageref[assame][adiffer u]{ rkey }
很高级的样子,应该用不上,感兴趣的同学可以自行研究。
3.3 Texts Alignment
LaTeX默认两端对齐,其他对齐方式如下:
- 左对齐 - flushleft 或者 \raggedleft
- 右对齐 - flushright 或者 \raggedright
- 居中 - center 或者 \centering
3.4 Quoted Texts

- 在LaTeX中,左单引号建议使用键盘左上角(~)键,左双引号建议使用两次左单引号。
- 如上图所示,有时候需要引用原文,这时候可以使用quote或者quotation进行操作,两个命令的区别在于quota只是引用一小段,而quotation用于引用多个段落。
- 图中的spacing用于调整行间距,注:单倍行距可使用singlespace。
3.5 New Lines and Paragraphs
LaTeX 认为所有东西都是在同一行或者同一段落中,因此如果要换行必须用一些特定的字符指明。
3.5.1 Creating New Lines
\newline 用于创建新的一行,此外,在上一行末尾加上 \linebreak,\,\\以及一个或多个空行也可以创建新行,但效果略微不同,具体如下图所示。

注:空行的效果是创建新行并缩进。
另外,\[]用于要指定行间距,例如:\\[2 mm]。此外,\\∗*∗或者\\∗*∗[]也可以分行,但是不允许分页。
3.5.2 Creating New Paragraphs
\par用于创建新段落。当然,\paragraph{}, \subparagraph{}这种可以带参数的命令还可以创建带标题的段落。此外,\parindent,\noindent和\parskip用于调整首行缩进以及段前间距。具体如下:

注:
(1)用的\ par命令创建的新段落默认有首行缩进。
(2)增加的\ parindent = 8 mm命令将段落缩进增加到8 mm。
(2)用\ noindent禁用缩进,用\parskip 指定段间距。
注意,\ parindent和\ parskip命令全局有效,从(2)(3)(4)中可以看出,缩进8mm将作用于后面所有用\par指定的段落。
\ paragraph{}命令输出的新段落与上一段落之间有段间距而没有首航缩进。\subsection{}命令与\paragraph{}命令的效果相似,唯一的区别是,段落开头有缩进。
3.6 Creating and Filling Blank Space
在LaTeX中,直接按Tab键或者多个空格的结果是只有一个空格。
对于空白这一问题,LaTeX有自己的空白符号,具体如下:
命令

注意:
只要是以字母结尾的命令都需要在命令后面加空格以区分命令和文本。单位

注意:
有些命令是把参数放在花括号里面的{}。
在\vskip,\vspace {}等命令中,其参数的长度单位可以是mm(millimeter),cm(centimeter),in(inch),pt(point),em(width of M)和ex(width of x)。通常,单位em用于水平长度,而ex对于垂直长度。此外,这些长度单位还可以按比例给值,对比对象可以是\textheight(页面上文本的高度),\textwidth(页面上文本的宽度)或\linewidth(列的宽度)。
例如:0.2 \textheight 指垂直间距为 \textheight的20%。0.3 \linewidth指水平间距为\linewidth的30%。页首行,页末行
在LaTeX中,如果要在页首行和页末行添加空白,需要在命令前面添加~,或者使用加星号的命令,例如:\vspace*{}。
同样的,相对于使用\hfill 和\vfill,更建议使用\hspace*{\fill} 和 \vspace*{\fill}。
注意:
- \vskip,\vspace{}以及其他命令的参数若为负数会造成字符重叠。
- 如果输入的间隔值太大,受页面尺寸限制,这些空白可能会超出页面甚至延伸到下一行。
3.7 Producing Dashed Within Texts
要在LaTeX中输入短横线,可以使用-输入,需要注意的是,在LaTeX中,有三种不同长度的短横线:-(一个-),–(两个–),––(三个—)。
最短的短横线用于单词,例如复合词这种。
第二短的短横线用于指定范围。
最长的短横线用于定义某个事物。
具体如图中所示。

3.8 Preventing Line Break
因为像两端对齐,左右对齐这种格式问题都是预先定义好的,这时候如果有一些特定的单词就有可能被分成两行,例如,不希望将“ Dilip‘Datta”拆分为“ Dilip”和“ Datta”,Dilip在一行,Datta在下一行。这时候可以在单词之间加“~"或”\“, 将这两个词强制打印在同一行中,而没有任何空格,如“ Dilip~Datta”或“ 10 ,inch”
- \nolinebreak
\nolinebreak是另一个用于防止换行的命令,例如Dilip \nolinebreak \Datta’。 - \mbox{}
事实上,”~“,“\”和“\nolinebreak”,这三个命令不是特别好,尤其是在单词中间不被允许插入空格的情况下。更好的选择是用\mbox{}。
例如,可以使用“ \mbox”强制将“ NSGA-II-UCTO”打印在同一行中:
\mbox{NSGA-II-UCTO}。
注意,这些命令输出的文字可能超出页面宽度。因此,用了这些命令最好再检查下输出。
3.9 Adjusting Blank Space After a Period Mark
一句话结束之后通常会加上一个句号,英文中是一个点“.”,这个时候下一句话前面会有一个很大的间隔。而有的时候我们用了句号,却不希望有很大间隔,比如“Dr. Heyley”,这个时候可以用“.\”,“~”或者“空格”来减小间隔的宽度。
如果句号后面跟了一个右括号,最好用反斜杠标记一下,因为句号加右括号有可能被LaTeX认为是另一个命令。
如果一句话的结尾是大写字母加句号,这个时候他的空格会很小,这时候需要加“@”来增加间隔宽度。

3.10 Hyphenating a Word
如果一行的最后一个单词超出页面宽度,则通常通过将单词分为两部分,用第一部分加连字符放在第一行的末尾,然后将第二部分放在下一行。但是,在许多情况下,LaTeX可能不会这么处理,而是任由单词超过页面。
在这种情况下,可以通过在单词之间插入“-”,手动地指定适当的断行,例如,在当前行的末尾使用’kind-ness’,从而在一行末尾打印’kind-’,在下一行的开始处显示“ ness”。
对于一些新出现的词语,LaTeX可能无法在段落中提供正确的连字符,这时候,可以放在sloppypar环境中。
例如\begin{sloppypar} Maneswarirabha\end {sloppypar}。当然,写完之后最好再检查一下。
LaTeX in 24 Hours - 3. Formatting Texts I的更多相关文章
- LaTeX技巧24:LaTeX常用命令集锦
\hyphenation{word list} %断字命令:\showthe\topmargin %显示某个参数的数值或者内容: 在tex编译过程中出现行溢出(overflow hbox)是由于断字程 ...
- Python -- tabulate 模块,
pip install tabulate >>> from tabulate import tabulate >>> table = [["Sun&quo ...
- web api\ protobuf \formatter
9:50:20吴X2014/11/7 9:50:20 9:55:14吴X2014/11/7 9:55:14webapi实现protobuf吴X2014/11/7 9:56:29http://www.s ...
- 一个使用fasttext训练的新闻文本分类器/模型
fastext是什么? Facebook AI Research Lab 发布的一个用于快速进行文本分类和单词表示的库.优点是很快,可以进行分钟级训练,这意味着你可以在几分钟时间内就训练好一个分类模型 ...
- Latex Notes
latex Table of Contents 1. Presentation/Slides with Beamer 2. Drawing in LaTex With TikZ 3. Tracked ...
- Fedora 24中的日志管理
Introduction Log files are files that contain messages about the system, including the kernel, servi ...
- 我的LaTeX中文文档模板
中文LaTeX处理模板 环境MiTex内核 编辑环境WinEdit 源码如下: \documentclass[a4paper,12pt]{article} \usepackage{CJK} %设定字号 ...
- Excel 转Latex 及tex表格的处理 总结
Excel 转LaTex表格 与TeX表格的处理 总结 工具使用:一个Latex表格输入神器--Excel2Tex插件的安装过程. 首先下载插件:http://www.ctan.org/tex-a ...
- LaTex随笔
最近简单接触了LaTex排版,留下一些笔记供日后参考. 1.基本格式 \documentclass{article}\title{……}\begin{document}\maketitle\secti ...
- 用Latex写学术论文: IEEE Latex模板和文档设置(\documentclass)
1.可以在博客园中使用latex代码输出公式,以后再以不用复制图片粘贴啦: http://www.cnblogs.com/cmt/p/3279312.html 例如以下代码两边加上 $ 符号后 x(k ...
随机推荐
- Jemter 压测基础(一)
Jemter 压测基础(一) 1.压力测试的基本概念: 1.吞吐率(Requestspersecond) 服务器并发处理能力的量化描述,单位是reqs/s,指的是某个并发用户数下单位时间内处理的请 ...
- Linux下的zip和tar压缩解压缩命令详解
一.zip压缩工具 zip的压缩包在windows和linux中都比较常用,它可以压缩目录和文件,压缩时录时,需要指定目录下的文件.zip后面先跟目标文件名,即压缩后得自定义压缩包名,然后跟要压缩的文 ...
- 如何判断JS数据类型
在 ECMAScript 规范中,共定义了 7 种数据类型,分为 基本类型 和 引用类型 两大类,如下所示: 基本类型:String.Number.Boolean.Symbol.Undefined.N ...
- python_列表(list)
列表用中括号表示,列表中的数据可以存储不同类型的数据,在实际开发中,列表中都是定义相同类型数据,可以对列表中的数据用相同的方法进行处理. 1, 通过index获取到对应的值. num_list = [ ...
- sqlmap-1.6.12.11
Usage: sqlmap.py [options] 选项: -h, --help 显示基本帮助信息并退出 -hh 显示高级帮助信息并退出 --version 显示程序的版本号并退出 -v VERBO ...
- spider_使用request库进行post传参
# from urllib import parse,request# import jsonimport requests# 有道翻译urlurl = "http://fanyi.youd ...
- Redis集群(主从复制)
主从复制主从复制原理 Redis集群中有很多Redis服务器,这些Reids服务器分为主服务器和从服务器. 从服务器会向主服务器发送命令:SYNC命令. 主服务器接收到SYNC命令后,开始执行GBSA ...
- Spring入门之使用 spring 的 IOC 解决程序耦合(Spring环境搭建)(03-01)
3.1 案例的前期准备 1.使用的案例是:账户的业务层和持久层的依赖关系解决(就是有两个账户实现转账之类的事情,后期继续用这个案例)2.准备环境:在开始 spring 的配置之前,我们要先准备一下环境 ...
- Flask默认配置参数
方式一:字段赋值方式导入 1 2 3 4 5 6 7 8 9 10 11 12 13 14 from flask import Flask app = Flask(__name__) app. ...
- Linux模拟手动输入指令
当执行一个命令,其中会询问你的选择的时候,在脚本上,可以如此模拟手动输入: 运行的命令 <<EOF 键盘输入 EOF 例如挂载硬盘: DISK=/dev/sdb /sbin/fdisk $ ...