latex全文设置段间距_latex 标题、段落及行距

2023-10-29

资源

本文主要介绍了如何使用 titlesec 宏包设置各级标题样式。这里 是其官方手册,本文主要参考了该手册。如果想了解更多详情请直接查阅该手册。此外本文还对缩进、段距、行距的内容进行的简单的介绍。

设置标题样式

标题样式的设置分为三个部分,标题之前、标题、标题之后。其中标题包括标签和标题文字。标签为标题文字之前的内容,包括标题序号。

titlesec 宏包提供了 \titleformat 命令用来设置各级标题的样式,调用形式如下:

\titleformat{}[]{}{}{}{}{}

为被定义的标题命令。如:\part, \chapter, \section, \subsection, \subsubsection, \paragraph 或者 \subparagraph。

为标题形式。

hang 是默认的标题形式(和标准的\section 形式一样)。

display 将标签单独作为一段(和标准的 \chapter 形式一样)。

runin 下方段落和标题同行(和标准的 \paragraph 形式一样)。

frame 和 display 模式一样,只不过内容用一个盒子包裹。

block 将整个标题排版在一个没有附加形式的块(段落)中。在居中标题和特殊排版(包括图片工具)时有用。

leftmargin,rightmargin,drop,wrap用来将标题垂直排版在左侧或右侧,可能会造成重叠。具体用法和注意事项请参考源手册。

指定一个用在整个标题(包括标题文字和标签)的格式。如我们正文的文字使用罗马字体族,整个标题使用无衬线字体族,可以在这里输入 \sffamily 进行切换。这个地方可以添加一些垂直元素(对于某些垂直形式[shape]的标题为水平元素),这些元素会出现在标题上方空白的下方。

用来定义标签。如默认 section 的 label 为 \thesection\quad,你可以使用 \thesection.\quad 在标签和文字之间加上一个点。如果你的标题等级中不需要 label。你可以将这个设置为空,但不建议这么做。因为这并不会抑制目录及栏外标题中的 label。

定义标签和标题文字之间的水平距离。必须有一个值,不能为空(可以为 0pt)。在 display shape 中为垂直距离。在 frame shape 中为标题文字到框(frame)之间的距离。在带星号的标题命令中 和 都会被忽略。如果你使用图片之类的元素,请将该参数设置为 0 pt。

出现在标题文字之前的代码,标题文字会作为参数自动的传递给最后一个命令。然而,如果加载包的时候使用了 explicit 参数,必须显示的使用 #1 来替代标题文字。这在标题文字出现在命令中间时十分有用。

出现在标题文字之后的代码。用于排版的元素在 hang,block 和 display 形式时为垂直模式。在 runin 和 leftmargin 为水平模式。其他模式下被忽略。

下面是一个排版示例:

%% section

\titleformat{\section}

[hang]

{\sffamily \vbox{\titlerule}}

{\centering\zihao{-3}\bfseries \S\ \thesection\enspace}

{0pt}

{\zihao{-3}\bfseries}

[\vbox{\titlerule \vspace{1pt} \titlerule}]

我们在正文中使用 \section{软件模块总体介绍} 命令时就会得到如下的排版结果:

标题示例

参照上面的说明,这段代码应该不难理解。

设置标题间距

我们可以像上面代码在 和 中添加添加垂直排布元素(这里为横线)一样。在这里添加一些元素来控制标题之前的间距和标题之后的间距。但更一般的做法是使用 \titlespacing 命令来控制标题之间的间距,其命令形式如下:

\titlespacing{}{}{}{}[]

同上。

增加左侧的补白(margin)。除了 ...margin 和 drop 形式下,此时该参数用来设置标题的宽度。在 wrap 形式下,为最大宽度。在 runin 形式下,为标题左侧的行内缩进。如果是负数,会使标题 overhangs。

标题之前的垂直间距。

标题和文字的间距。在 hang,block 和 display 形式下为垂直间距(vertical),在 runin,drop,wrap 和 ...margin 形式下为水平间距。如果为负数,你将会定义一个段间距小于 \parskip 的空间。

在 hang,block 和 display 形式下。使用该参数允许你增加 补白。

官方手册中提到该命令有一个带*的版本,可以禁止掉标题后面的段落缩进(除了 drop,wrap 和 runin 形式)。但如果之后同时使用了 indentfirst 包依然会产生缩进。另一个需要注意的问题是,有人提到该包会和 fancyhdr 包有部分冲突,我这里同时也使用了这个包且包含在 titlesec 之后,并没有发现有什么冲突的地方。

下面这个示例是用来设置上方图片中的标题前后间距:

\titlespacing{\section}{0pt}{2.5ex plus 1ex minus .2ex}{1.3ex plus .2ex}

关于 latex 中补白的延展性(plus 和 minus)以及 latex 中使用的各种计量单位(ex),请参考相关手册。这里不再进行介绍。

如果你不喜欢打印出整个补白命令,包括 plus 和 minus 参数,这里提供了一个 *n 缩写。在 参数中它相当于带有一些伸展性(strechability)和一点收缩性(shrinkability)的 n ex 。在 中则带有一些的伸展性而没有收缩性。所以上面的命令也可以写成:

\titlespacing{\section}{0pt}{*2.5}{*1.3}

\beforetitleunit 和 \aftertitleunit 命令用来控制 * 中的伸展性和收缩性,如果你不喜欢预定义的值可以修改它们。

注意: \titlespacing 对 \chapter 和 \part 并不起作用,除非你使用 \titleformat 改变它们的格式。

官方手册中还有更多的内容和示例,如果你觉得上面的内容并不覆盖你所用的应用,请查询官方手册获取更多内容。

行距、段距及其他内容

在文档的排版中,行距、段距以及首行缩进也是非常重要的内容。下面我将对这些内容做一些简单的介绍。

\parindent 设置除新标题后第一段之外的其他所有段的缩进值。如果希望新标题后首段也缩进,请加载 indentfirst 宏包。如果希望某一段去掉缩进请在段前使用 \noindent 命令。

\parskip 在除新标题后首段的其他段之间增加一个“弹力胶”,可以将其理解为一个自适应的段间距。该参数对页面的首段和最后一段也不起作用。

baselineskip 两行之间的行距。但通常我们不应该直接设置这个值,具体原因请参考其他有关行距的介绍。文章的最后会给出一篇不错的文章。

topskip 设置每页第一行内容到默认位置的垂直间距。即实际书写内容到可书写区域顶部的距离。

下面是一个关于上方内容设置的完整示例:

%% 添加首行缩进,两个字符

\RequirePackage{indentfirst}

\setlength{\parindent}{2em}

%% 行距

\linespread{1.5}

\selectfont

% 页面顶行空白

\setlength{\topskip}{0ex}

% 段间距

\setlength{\parskip}{1ex}

参考资料:

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

latex全文设置段间距_latex 标题、段落及行距 的相关文章

随机推荐

  • 算法训练营第二十四天(8.7)

    目录 LeeCode39 Combination Sum LeeCode39 Combination Sum II LeeCode131 Palindrome Partitioning LeeCode39 Combination Sum 题
  • 一文弄清using namespace std;的作用[2021最新版]

    using namespace std 到底有什么用 为什么我们每次头文件后面都要加它 不加它会怎么样 导读 对于很多学习C 的同学 老师教同学们写的一个程序就是 hello world 同时也会在不经意间在头文件的后面加上using na
  • 遥感图像处理学习笔记二——遥感图像的分类处理

    1 基本概念 地物的类 具有同种特性的地物集合称为一类 一类地物具有同一标志 不同种类地物具有不同的光谱特性 地物反射和发射电磁波能量的能力 分类 根据各类样本内在的相似性 采用某种判决准则 将特征空间分割成若干集合 的过程 2 基本思想
  • 循环-13. 求特殊方程的正整数解

    循环 13 求特殊方程的正整数解 15 时间限制 400 ms 内存限制 65536 kB 代码长度限制 8000 B 判题程序 Standard 作者 张彤彧 浙江大学 本题要求对任意给定的正整数N 求方程X2 Y2 N的全部正整数解 输
  • 不能安装64位java虚拟机_virtualbox不能安装64位系统的解决方法

    大家先来看看问题描述 新建虚拟机的列表中没有64位系统选项 如何解决 操作系统 Windows 7 64位 虚拟机 Oracle VM VirtualBox Linux版本 Ubuntu4 0 64 解决方法 修改机器中的BIOS配置 st
  • Linux ——objdump和readelf的使用

    在一个程序编译结束后 会生成 o的文件 但往往当我们用vim命令查看这个文件内容时 就全是乱码 像这样 那么我们应该如何查看 o文件呢 objdump和readelf的使用 objdump 首先先让我们了解一下什么是odjdump 作用 查
  • Gson的使用

    一 Gson的基本用法 生成json Gson gson new Gson User user new User 用户 28 String jsonObject gson toJson user name 用户 age 28 解析JSON
  • vue-格式化时间-封装时间过滤器

    一 全局封装时间处理过滤器 filter js export default function originVal const dt new Date originVal const y dt getFullYear const m dt
  • QT中QMainWindow、QWidget、QDialog的区别

    QMainWindow 详细描述 QMainWindow类提供一个有菜单条 锚接窗口 例如工具条 和一个状态条的主应用程序窗口 主窗口通常用在提供一个大的中央窗口部件 例如文本编辑或者绘制画布 以及周围菜单 工具条和一个状态条 QMainW
  • 2022 阿里全球数学竞赛获奖名单公布,其中 00 后选手占了一半多,如何评价这一现象?

    2022 阿里全球数学竞赛获奖名单公布 其中 00 后选手占了一半多 如何评价这一现象 写在前面 本届比赛共吸引55000余人报名 其中00后占比超4成 而在获奖的77人中 00后更是拿走了一半的奖项 00后 作为新时代科研新势力 正在慢慢
  • 系统接口日志记录-AOP

    在进行系统开发的时候 系统提供给前端或者第三方使用的接口 要对接口的调用情况 接口的接收的参数 返回的结果 调用者 调用接口的ip等 进行记录 通过Spring AOP的 环绕通知 可以很容易实现该功能 实现该功能对调用接口数据的记录也便于
  • zigbee中有几个不同的频率,是啥意思?有啥联系和区别

    zigbee中有几个不同的频率 是啥意思 有啥联系和区别 2011 05 30 09 03 cnsxgh 分类 工程技术科学 浏览1209次 channel 2405Mhz Pan ID 0x0628 工作频率 2 4Ghz 提问者采纳 2
  • JAVA中的时间大小比较

    1 时间的比较 import java text DateFormat import java text ParseException import java text SimpleDateFormat import java util D
  • Windows遇到ERR_NETWORK_ACCESS_DENIED处理方案

    问题描述 用了总部vpn 总是打不开总部资源 之前可以一直提示 禁止访问互联网ERR NETWORK ACCESS DENIED 郁闷了好几天 今天自己查查资料解决了 说明 问题总是能解决的 只是需要耐心 解决步骤 打开cmd 切以管理员身
  • window.open 使用方法总结

    1 最基本的弹出窗口代码 因为着是一段javascripts代码 所以它们应该放在之间 是对一些版本低的浏览器起作用 在这些老浏览器中不会将标签中的代码作为文本显示出来 要养成这个好习惯啊 window open test html 用于
  • 蓝牙之八-HFP

    HFP 在调试安卓的HFP client时遇到了如下问题 其中有一个E提示 因为AT命令的错误 所有创建SLC失败 然后断开RFCOMM链接 表现出来的是已经配对的手机不停的断开重连 HFP协议 HFP Hands free Profile
  • 2020重庆市法治理论知识考试答案查询收集

    重庆市法治理论知识考试平台考试题 下面就是搜集答案的代码 我得到的题目就下面这些 答案没放上来 我这也有 文档下载地址 链接 https pan baidu com s 1rLxqMdFUPxCjEVdpepq wg 提取码 dnyq 复制
  • 【HIT-软件构造】使用Gradle脱离IDE环境

    在软件构造实验中 我们将代码提交到GitHub仓库前 实验还要求我们使用其他工具build我们的实验代码以脱离环境 这些工具包括Ant Maven Gradle Travis CI等 然而这些构建工具不论是在线的还是离线的 都需要基于Gro
  • RestFul风格详解

    文章目录 一 前言 二 什么是RestFul风格 三 传统风格与RestFul风格对比 1 传统方式操作资源 2 RestFul方式操作资源 四 RestFul代码演示 1 代码展示 2 拓展情景 五 使用method属性指定请求类型 六
  • latex全文设置段间距_latex 标题、段落及行距

    资源 本文主要介绍了如何使用 titlesec 宏包设置各级标题样式 这里 是其官方手册 本文主要参考了该手册 如果想了解更多详情请直接查阅该手册 此外本文还对缩进 段距 行距的内容进行的简单的介绍 设置标题样式 标题样式的设置分为三个部分