当前位置: 首页 > article >正文

LaTeX之写论文有用的指令

LaTeX写论文之有用指令

原始文档: https://www.yuque.com/lart/tools/skb2y8

文章目录

  • LaTeX写论文之有用指令
    • 表格
      • 自定义竖线粗细
      • 调整位置
      • 合并单元格
    • 列表
      • 无序列表
      • 有序列表
      • 压缩空间
    • 图片
      • 插入图片
      • 调整位置
    • 浮动体
    • 文本
    • 定制长度

我写论文主要是套模板, 所以整体的格式排版我基本上不会调整, 主要是一些细节上的设定. 主要的一些参考来自于中文手册: 一份(不太)简短的 LATEX2ε 介绍 .

表格

自定义竖线粗细

image.png

\documentclass{article}% 导入关键包 array
\usepackage{array}% 定义新的列类型, 这里定义了一个竖线类型`?`
% 实际上可以直接用它来代替`\begin{tabular}`右侧的格式设置里的`|`.
\newcolumntype{?}{!{\vrule width 1pt}}\begin{document}
\begin{tabular}{|c?c|c|}
...
\end{tabular}
\end{document}
  • https://tex.stackexchange.com/questions/257128/how-does-the-newcolumntype-command-work?answertab=votes#tab-top
  • https://tex.stackexchange.com/questions/156807/single-thicker-vertical-line
  • array 文档: https://mirror.bjtu.edu.cn/ctan/macros/latex/required/tools/array.pdf

调整位置

参考 浮动体 一节.

合并单元格

同行内: \multicolumn{⟨n⟩}{⟨column-spec⟩}{⟨item⟩} , 其中 ⟨n⟩ 为要合并的列数, ⟨column-spec⟩ 为合并单元格后的列格式, 只允许出现一个 l/c/rp 格式. 如果合并前的单元格前后带表格线 | , 合并后的列格式也要带 | 以使得表格的竖线一致. 下面的例子还体现了, 形如 \multicolumn{1}{⟨column-spec⟩}{⟨item⟩} 的命令可以用来修改某一个单元格的列格式.

image.png

同列内: \multirow{⟨n⟩}{⟨width⟩}{⟨item⟩} , ⟨width⟩ 为合并后单元格的宽度, 可以填 * 以使用自然宽度.

image.png

注意, 合并了多行或者多列, 对应的位置不用再填充数据, 但是这里要注意间隔符 & 的适当调整. 同时要注意合并了上下的单元格后, 若是在中间绘制横线, 可以使用 \cline{} 通过制定绘制的列的范围来灵活的定制横线.

列表

无序列表

\usepackage{enumitem}\begin{document}\begin{itemize}\item ...\item ...
\end{itemize}\end{document}

有序列表

\usepackage{enumitem}\begin{document}\begin{enumerate}\item ...\item ...
\end{enumerate}\end{document}

压缩空间

想要压缩列表项的空间, 可以在在 \begin{itemize} 或者 \begin{enumerate} 后添加配置项: [noitemsep, nolistsep] .

图片

主要基于 \usepackage{graphicx} 来插入提供插入图片支持.

插入图片

\includegraphics[⟨options⟩]{⟨filename⟩}
image.png

\begin{figure}[t]\centering% 使图片居中, 也可以直接使用 `\begin{center} ... \end{center}` 环境包裹要居中的内容来实现.\includegraphics[width=\textwidth]{data/hardexapmles.pdf}% 这里在方括号里配置总体的宽度, 一般可以使用 `\textwidth` 作为基准宽度, 可以通过使用数字接该命令, 实现特定倍数的设置.\caption{caption.}% 自定义图片的caption内容.\label{fig:figlabel}% 自定义图片标签, 可以在文中使用 `\ref{fig:figlabel}` 引用. 注意, 这里的 `fig:` 不是必须的, 只是为了方便区分.
\end{figure}

调整位置

参考 浮动体 一节.

浮动体

这部分主要摘自 一份(不太)简短的 LATEX2ε 介绍, 这可以看做是一份非常有用的LaTeX的参考手册.

内容丰富的文章或者书籍往往包含许多图片和表格等内容. 这些内容的尺寸往往太大, 导致分页困难. LATEX 为此引入了浮动体的机制, 令大块的内容可以脱离上下文, 放置在合适的位置. LATEX 预定义了两类浮动体环境 figuretable . 习惯上 figure 里放图片, table 里放表格, 但并没有严格限制, 可以在任何一个浮动体里放置文字/公式/表格/图片等等任意内容.

table 环境的用法举例, figure 同理:

image.png

⟨placement⟩ 参数提供了一些符号用来表示浮动体允许排版的位置, 如 hbp 允许浮动体排版

在当前位置/底部/单独成页. tablefigure 浮动体的默认设置为 tbp .

image.png

双栏排版环境下, LATEX 提供了 table*figure* 环境用来排版跨栏的浮动体。它们的用法与tablefigure 一样, 不同之处为双栏的 ⟨placement⟩ 参数只能用 tp 两个位置。

浮动体的位置选取受到先后顺序的限制. 如果某个浮动体由于参数限制, 空间限制等原因在当前页无法放置, 就要推迟到之后处理, 并使得之后的同类浮动体一并推迟.

\clearpage 命令会在另起一页之前, 先将所有推迟处理的浮动体排版成页, 此时 htbp 等位置限制被完全忽略. float 宏包为浮动体提供了 H 位置参数, 不与 htbp! 混用. 使用 H 位置参数时, 会取消浮动机制, 将浮动体视为一般的盒子插入当前位置. 这在一些特殊情况下很有用 (如使用 multicol 宏包排版分栏内容的时候), 但尺寸过大的浮动体可能使得分页比较困难.

文本

主要是几个特定的格式:

  • textbf{text} 加粗 text 文本
  • textit{text} 倾斜 text 文本
  • textcolor{color}{text}text 文本着色为 color 指定的颜色. 调用 colorxcolor 宏包后, 我们就可以用这样的命令切换颜色, 我们一般使用 color 宏包并配合特定颜色名字来设定颜色.
    image.png
  • \rotatebox{90}{text}text 文本逆时针旋转90°.

定制长度

首先可以尝试比较直接的 \vspace{}\hspace{} 来调整前后内容的垂直间距和水平间距. \vspace 命令生成的垂直间距在一页的顶端或底端可能被 “吞掉” ,类似 \hspace 在一行的开头和末尾那样。对应地,\vspace* 命令产生不会因断页而消失的垂直间距。\vspace 也可用 \stretch 设置无限延伸的垂直长度。在段落内的两行之间增加垂直间距,一般通过给断行命令 \\ 加可选参数,如 \\[6pt]\\*[6pt]\vspace 也可以在段落内使用,区别在于 \vspace 只引入垂直间距而不断行

另外, 这里列举了一些可以调整的长度设定, 表中所有的长度命令可用 \setlength{}{} 来修改.

image.png

在这里我常用到的是其中的 abovecaptionskipbelowcaptionskip . 这可以用来调整图标的caption与上下文字之间的距离.

\begin{figure}[t]
\setlength{\abovecaptionskip}{0.2cm}   %调整图片标题与图距离
\setlength{\belowcaptionskip}{-0.4cm}   %调整图片标题与下文距离
...
\end{figure}

这里使用的单位主要定义如下:

image.png

基于此, 可以实现更为灵活的调整. 不过看起来 emex 调整起来更合理些.

http://www.lryc.cn/news/2415312.html

相关文章:

  • 无法访问计算机请检查名称的拼写,win10系统访问共享文件夹提示“请检查名称的拼写”的修复方案...
  • Javascript如何阻止事件的默认行为?
  • C++模仿超炫Vista风格QQ界面,这个QQ界面真的是满满的回忆啊!
  • [原创]走上IT之路的坎坷经历
  • MyEclipse6.5 汉化方法(未测试)
  • SQL数据库增删改查
  • Struts 2 下载文件(12)
  • 移动硬盘接口坏了怎么办解决教程
  • Linux下Nodejs安装(完整详细)
  • 电脑缺失d3dx9_42.dll文件怎么解决,教你5种有效的解决方法
  • DIV滚动条属性及样式设置方式
  • tomcat 服务器使用 url rewrite (地址转向)
  • 《暮光之城》——如果那真的是你,就请你再勇敢一点、再直接一点,因为我早已经不可救药的爱上你了。你是吸血鬼也罢,你是致命危险也罢,你是什么,我都无所谓。
  • 家庭必备,轻、快、好用的WIN10自带虚拟机
  • 基于mybatis-jsp-bootstrap-servlet-mysql-maven的Javaweb课程设计--刷题后台管理系统(考试题目管理系统)
  • dedeCMS采集规则各大CMS采集规则通用
  • 滚动公告栏代码
  • 团队博客介绍
  • java面试题之OAuth 2.0是什么,四种支持的方法
  • windows xp 安装图解
  • Windows配置DHCP与IP管理
  • 【科研之路】室内定位入门之基于定位原理的分类概述
  • 详细74系列IC功能说明
  • 消息队列常见问题总结
  • Window OS-拾贝
  • 【剑侠情缘服务端】武侠题材角色扮演类手游源码+手工外网端+安卓APP+视频教程
  • 资深开发者J2ME平台开发漫谈
  • 宏基4750网卡驱动linux,宏基4750g驱动下载-宏基4750g网卡驱动程序官方版 - 极光下载站...
  • 两种高性能I/O设计模式(Reactor/Proactor)的比较
  • gridview数据绑定