“LaTeX”的版本间的差异

来自wrc's Wiki
跳到导航 跳到搜索
 
(未显示同一用户的2个中间版本)
第3行: 第3行:
 
== 笔记 ==
 
== 笔记 ==
  
=== tabular <code>@{}</code> ===
+
=== Limit controls must follow a math operator ===
 +
 
 +
<code>\limits</code> 用于使下标出现在运算符的下面。<code>\limits</code> 之前的符号需要是一个 math operator。所以需要这样定义
 +
<syntaxhighlight lang=latex>
 +
\mathop{\mathrm{arg\,min}}\limits_{0≤j<i}(D(j))
 +
</syntaxhighlight>
 +
 
 +
=== 表格 ===
 +
 
 +
==== 合并单元格 ====
 +
 
 +
<syntaxhighlight lang=latex>
 +
\multicolumn{3}{l}{Stuff that spans 3 columns, left aligned}
 +
</syntaxhighlight>
 +
 
 +
==== tabular <code>@{}</code> ====
  
 
在 tabular 的参数中使用 <code>@{}</code> 可以移除对应列之间或者表格左右的空白。<ref>[https://latex.org/forum/viewtopic.php?t=27022 Why do people insert @{} in table preamble?]</ref>
 
在 tabular 的参数中使用 <code>@{}</code> 可以移除对应列之间或者表格左右的空白。<ref>[https://latex.org/forum/viewtopic.php?t=27022 Why do people insert @{} in table preamble?]</ref>
  
=== 表格标题换行 ===
+
==== 表格标题换行 ====
  
 
无需宏包的做法:
 
无需宏包的做法:
第28行: 第43行:
  
 
用 makecell 宏包:{{code|latex|<nowiki>\makecell{ABC\\DEF}</nowiki>}}</code> 两行间距较大,用 <code>\\[-1ex]</code> 暂时解决。
 
用 makecell 宏包:{{code|latex|<nowiki>\makecell{ABC\\DEF}</nowiki>}}</code> 两行间距较大,用 <code>\\[-1ex]</code> 暂时解决。
 +
 +
=== 调整段间距 ===
 +
 +
<syntaxhighlight lang=latex>
 +
\setlength{\parskip}{8pt}
 +
</syntaxhighlight>
  
 
=== <code>\newcommand</code> 和 <code>\newcommand*</code> 的区别 ===
 
=== <code>\newcommand</code> 和 <code>\newcommand*</code> 的区别 ===

2021年10月22日 (五) 21:46的最新版本

LaTeX 是一个排版系统。

笔记

Limit controls must follow a math operator

\limits 用于使下标出现在运算符的下面。\limits 之前的符号需要是一个 math operator。所以需要这样定义

\mathop{\mathrm{arg\,min}}\limits_{0≤j<i}(D(j))

表格

合并单元格

\multicolumn{3}{l}{Stuff that spans 3 columns, left aligned}

tabular @{}

在 tabular 的参数中使用 @{} 可以移除对应列之间或者表格左右的空白。[1]

表格标题换行

无需宏包的做法:

  1. 使用 \shortstack 命令,缺点为无法调整竖直方向的对齐,其它单行标题靠下。
    \begin{tabular}{ll}
      \shortstack{ABC\\DEF} & GHI \\
      \hline
      cell                  & cell \\
    \end{tabular}
    
    效果为
    ABC
    DEF  GHI
    ---------
    cell cell
    
  2. tabular 环境第一个参数中使用 p{3cm} 指定单元格的宽度,可用 \newline 手动换行。

用 makecell 宏包:\makecell{ABC\\DEF} 两行间距较大,用 \\[-1ex] 暂时解决。

调整段间距

\setlength{\parskip}{8pt}

\newcommand\newcommand* 的区别

\newcommand 定义体中可以出现分段,\newcommand* 定义体中不能。[2]为了快速地排查错误,一般只要允许都应使用带 * 的版本。

\newcommand{\examplea}[1]{% #1 可以包含 \par
}
\newcommand*{\exampleb}[1]{% #1 不能包含 \par
}

禁用连字(ligature)

虽然连字是一种 feature,但是有的时候不需要连字。

  • f\/f 字母间距偏大,\/ 原本是用来修正斜体与直立体字符间距的 [3]
  • f{}f 可能在 pdfLaTeX 和 LuaLaTeX 不可用 [4]
  • \hbox{f}f

\{\lbrace 的区别

[5]

  • \{ 能在文本模式和数学模式中使用
  • \lbrace 只能在数学模式中使用

宏包

algorithm2e

参见主条目 LaTeX algorithm2e

ctex

汉字字宽被存于 \ccwd 中。[6]

工具

texcount

包括 include 文件的字数:

texcount -inc main.tex

简略输出:

texcount -inc -brief main.tex

Tables Generator

网站。用于生成 LaTeX 表格。支持从 Google Docs 中复制,可调整对齐选项等等。可在工具栏右边选择使用 booktabs 风格的表格。

参考资料