LATEX关于表格设计(使用tabularry宏包)

使用tabularry宏包进行latex表格的设计

tabularray宏包是吕老师基于LaTeX3设计的新一代的表格排版,较好地实现了表格内容与样式的分离,能够在很大程度上简化LaTeX中表格排版的工作量。
在外观上tabularry设计的表格看起来比较贴合office中的表格,同时操作上也比较简便。简化了表格的中\multirow和\multicolumn的操作,相对起来比较容易上手。但是由于该宏包是2021年后才更新,因此在网上的教程较少。

一个简单的表格对比

这个是使用老版宏包tabls制作表格的代码:

\begin{tabular}{lccr}
\hline
Alpha & Beta & Gamma & Delta \\
\hline
Epsilon & Zeta & Eta & Theta \\
\hline
Iota & Kappa & Lambda & Mu \\
\hline
\end{tabular}

这个是使用tabularry制作表格的代码:

\begin{tblr}{lccr}
\hline
Alpha & Beta & Gamma & Delta \\
\hline
Epsilon & Zeta & Eta & Theta \\
\hline
Iota & Kappa & Lambda & Mu \\
\hline
\end{tblr}

两个宏包制作效果如下:
与代码出现的顺序相同
从简单表格编译的效果来看,两者美哟任何的区别,代码的维护与可读性差不多。

复杂表格的对比

在tabls宏包中想实现复杂的表格排列需要使用\multirow和\multicolumn对表格进行合并,但是至于其中单元格内部的换行经常报错,导致无法实现这个功能(至少我用的时候出现这个问题)。而在tabularry宏包中则能固避免这个问题。
比如就上述简单表格内部的换行;

\begin{tblr}{lccr}
\hline
{Alpha \\ a }& Beta & Gamma & Delta \\
\hline
Epsilon & Zeta & Eta & Theta \\
\hline
Iota & Kappa & Lambda & Mu \\
\hline
\end{tblr}

实现效果如下
简单表格的换行功能

下面来一个复杂表格的换行功能

\begin{tabular}{|c|c|c|c|c|}
\hline
\multirow{2}{*}{2 Rows}
& \multicolumn{2}{c|}{2 Columns}
& \multicolumn{2}{c|}{\multirow{2}{*}{2 Rows 2 Columns}} \\
\cline{2-3}
& 2-2 & 2-3 & \multicolumn{2}{c|}{} \\
\hline
3-1 & 3-2 & 3-3 & 3-4 & 3-5 \\
\hline
\end{tabular}

这个时tab的效果图
tab环境中图片
这个是tablr的功能

\begin{tblr}{|c|c|c|c|c|}
\hline
\SetCell[r=2]{c} 2 Rows
& \SetCell[c=2]{c} 2 Columns
& & \SetCell[r=2,c=2]{c} 2 Rows 2 Columns & \\
\hline
& 2-2 & 2-3 & & \\
\hline
3-1 & 3-2 & 3-3 & 3-4 & 3-5 \\
\hline
\end{tblr}

使用表格包,您可以使用 SetCell 命令设置跨区单元格:在 SetCell 命令的可选参数中,选项 r 用于行跨度编号,c 用于列跨度编号;在它的强制参数中,接受水平和垂直对齐选项。因此,排版跨区单元格要简单得多:
效果图如下:
tablr的排列图
使用 multicolumn 命令,必须删除省略的单元格。相反,使用 multirow 命令,不得删除省略的单元格。在这方面,SetCell 命令的行为与 multirow 命令相同。
在 tblr 环境中,跨区单元内的任何 hline 段都将被忽略,因此我们可以在上面的示例中自由使用 hline。此外,任何省略的单元格在排版时肯定会被忽略,
不管它是空的还是不是。使用此功能,我们可以将行号和列号放入省略的单元格中,这将有助于我们在表格相当复杂时找到单元格。

总结

总的来说,新的宏包tabularry在表格排列上有优越性,同时也是说明了能用新的就用新的。新的宏包在排列效果上会比旧宏包更加方便,代码的可读性也会增加.。
注意:

  1. 上面的仅代表个人意见,希望能遇到更多的大佬带我学习latex。
  2. 后期如果有时间还会考虑继续对tabularry进行介绍。
  3. 这个是第一次对latex的相关知识进行介绍,不喜欢勿喷。
  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值