LaTeX 导出后端支持为表格内容与布局指定多种 LaTeX 属性。除设置标签(参见 Internal Links)与标题(参见 Captions)外,其他合法 LaTeX 属性包括:
LaTeX 导出后端会根据模式对表格进行不同包裹,以正确渲染数学符号。模式可选 ‘table’ 、 ‘math’ 、 ‘inline-math’ 、 ‘verbatim’ 或 ‘tabbing’ 。
若为 ‘math’ 或 ‘inline-math’ 模式,表格会被包裹在数学环境中,但单元格内容原样导出。若为 ‘tabbing’ 则使用 LaTeX tabbing 环境,并使用正确的制表符 ‘\>’ 。
LaTeX 导出后端根据 org-latex-default-table-mode 确定默认模式,并会将同一模式下的连续表格合并为单个环境。
设置 LaTeX 导出后端导出 Org 表格时使用的默认表格环境。常用 LaTeX 表格环境由以下宏包提供:tabularx、longtable、array、tabu、bmatrix。如需使用 tabularx、tabu 等宏包或其替代宏包,需将其加入 org-latex-packages-alist 变量,以便 LaTeX 导出后端在生成的 LaTeX 文件中插入对应加载语句。如需为 LaTeX 片段预览配置这些宏包,可查看 org-latex-packages-alist 的文档字符串。
使用 ‘CAPTION’ 关键字为表格设置简单标题(参见 Captions)。自定义标题可使用 ‘:caption’ 属性,直接接受原始 LaTeX 代码。 ‘:caption’ 的值会覆盖 ‘CAPTION’ 的值。
LaTeX 中的表格环境默认非浮动体。如需设为浮动对象,可将 ‘:float’ 设置为以下值之一: ‘t’ (使用默认 ‘table’ 环境)、 ‘sideways’ (使用 ‘sidewaystable’ 环境)、 ‘multicolumn’ (使用 ‘table*’ 环境使表格跨多栏)以及 ‘nil’ 。 除此之外, ‘:float’ 也可传入任意值,例如通过 LaTeX 的 ‘float’ 宏包定义的自定义浮动类型。
LaTeX 浮动体可额外设置 ‘:placement’ 布局属性,即常用的 ‘[h t b p ! H]’ 方括号内参数。注意 ‘:float sideways’ 类型的表格会忽略 ‘:placement’ 属性。
LaTeX 导出后端使用这些属性设置普通表格的对齐方式、字体与宽度。
‘:options’ 属性允许添加可选参数列表(LaTeX 导出中放在方括号内),部分表格环境(如 tabularray 宏包的 longtblr)支持该结构。示例: ‘:options remark{Note}={note},remark{Source}={source}’ 。
当 ‘:spread’ 非 nil 时,LaTeX 导出后端会针对 tabu 与 longtabu 环境按 ‘:width’ 拉伸或压缩表格。未设置 ‘:width’ 时 ‘:spread’ 无效。
三个属性均为开关。 ‘:booktabs’ 为普通表格启用现代排版增强效果,需通过 org-latex-packages-alist 加载 booktabs 宏包。 ‘:center’ 用于表格居中。 ‘:rmlines’ 仅对“table.el”表格生效,移除除首条水平线外的所有 ASCII 横线。
LaTeX 导出后端会将 ‘:math-prefix’ 字符串插入表格前的数学环境中,将 ‘:math-suffix’ 插入表格后的数学环境中,将 ‘:math-arguments’ 字符串插入宏名与表格内容之间。 ‘:math-arguments’ 适用于需要多参数的矩阵宏,如 ‘qbordermatrix’ 。
LaTeX 表格属性可适配多种场景,如矩阵运算或跨页表格:
#+ATTR_LATEX: :environment longtable :align l|lp{3cm}r|l
| ... | ... |
| ... | ... |
#+ATTR_LATEX: :mode math :environment bmatrix :math-suffix \times
| a | b |
| c | d |
#+ATTR_LATEX: :mode math :environment bmatrix
| 1 | 2 |
| 3 | 4 |
使用 LaTeX 命令 ‘\bicaption{HeadingA}{HeadingB}’ 设置标题:
#+ATTR_LATEX: :caption \bicaption{HeadingA}{HeadingB}
| ... | ... |
| ... | ... |