`nicematrix` NiceTabularX 对齐

`nicematrix` NiceTabularX 对齐

我试图节省nicematrix NiceTabularX表格中的水平空间,因为我的表格所在的报告有页数限制(表格长度为半页)。我希望使用,nicematrix因为我使用tikz\tabularnote{}以及一个彩色标题,它不会在我的主表中渗色,所以我更喜欢使用它。通过图像,这是我的 MWE 表格最初的样子(手动添加颜色):

在此处输入图片描述

我已控制红色距离,以便它与左边距齐平\begin{NiceTabularX}{\textwidth}{@{}c!{}X}(第 7 页)。nicematrix文档),但我不知道如何控制蓝线的距离。我希望有一些空间,但也希望控制,因为我已经修剪了我的桌子,但减少空间也许可以节省一两行,这是理想的。

使用{\textwidth}{@{}c!{}@{}l!{}}产生了这个所以我觉得我需要这个X列:

在此处输入图片描述

有人知道我如何控制NiceTabularX表格中第一列和第二列之间的距离,同时允许换行吗?我不能声称对表格有太多经验,所以如果这是基本的或之前问过的,我很抱歉,我检查了NiceTabularX这里的问题。

目前的情况:

在此处输入图片描述

梅威瑟:

\documentclass{book}

\usepackage{nicematrix}
\usepackage{booktabs}
\usepackage{lipsum}

\begin{document}

\begin{table}
\footnotesize

\begin{NiceTabularX}{\textwidth}{@{}c!{}X}
\toprule
\textbf{Year} & \textbf{Important milestones or key achievements in de novo enzyme design}\\ \midrule
1983-84 & \lipsum[1][1-3] \\ \addlinespace[0.1em]
1994    & \lipsum[1][1-3] \\ \addlinespace[0.1em]
1995    & \lipsum[1][1-3] \\ \addlinespace[0.1em]
2000-04 & \lipsum[1][1-3] \\ \addlinespace[0.1em]
2010-14 & \lipsum[1][1-3] \\ \addlinespace[0.1em]
\bottomrule
\end{NiceTabularX}
\end{table}

\end{document}

答案1

您似乎没有有效利用各种容易获得的间距选项。例如,您可以@{}在类似表格的环境的两端插入,以消除任何不必要的空白填充边缘表格状的环境。

大量的列间空白由 给出2\tabcolsep。要生成较少的空白,您可以为 设定一个较小的值\tabcolsep6pt大多数文档类中都有其默认值),或者您可以直接说明您愿意在第 1 列和第 2 列之间允许的空白量 - 比如,@{\hspace{4pt}}如果4pt是所需的空白量。

我不确定您的实际文档是否进一步使用了软件包提供的机制。如以下屏幕截图所示,对于您提供的代码,使用环境或只是使用普通的旧环境nicematrix没有区别。NiceTabularXtabularx

哦,请使用--而不是-在年份组之间生成印刷破折号。

在此处输入图片描述

\documentclass{book}
\usepackage{tabularx,nicematrix}
\usepackage{booktabs,lipsum}

\newcommand\blob{%
  \toprule
  \textbf{Year} & 
  \textbf{Important milestones or key achievements in de novo enzyme design}\\ 
  \midrule
  1983--84 & \lipsum[1][1-3] \\ \addlinespace[0.1em]
  1994     & \lipsum[1][1-3] \\ \addlinespace[0.1em]
  1995     & \lipsum[1][1-3] \\ \addlinespace[0.1em]
  2000--04 & \lipsum[1][1-3] \\ \addlinespace[0.1em]
  2010--14 & \lipsum[1][1-3] \\ \addlinespace[0.1em]
  \bottomrule}

\begin{document}

\begin{table}
\footnotesize

\begin{NiceTabularX}{\textwidth}{@{} l @{\hspace{4pt}} X @{}}
\blob
\end{NiceTabularX}

\bigskip

\begin{tabularx}{\textwidth}{@{} l @{\hspace{4pt}} X @{}}
\blob
\end{tabularx}

\end{table}

\end{document}

答案2

好吧,你强调解决方案应该考虑nicematrix包,但无论如何使用tabularray是一个很好的替代方案(只需要编译一个):

\documentclass{book}

\usepackage{tabularray}
\UseTblrLibrary{booktabs}
\usepackage{lipsum}

\begin{document}
    \begin{table}
    \footnotesize
\begin{tblr}{colsep  = 4pt, % or desired amount
             colspec = {@{} l X[j] @{}},
             row{1}  = {font=\bfseries}
             }
    \toprule
Year    & Important milestones or key achievements in de novo enzyme design \\
    \midrule
1983-84 & \lipsum[1][1-3] \\
1994    & \lipsum[1][1-3] \\
1995    & \lipsum[1][1-3] \\
2000-04 & \lipsum[1][1-3] \\
2010-14 & \lipsum[1][1-3] \\
    \bottomrule
\end{tblr}
    \end{table}
\end{document}

在此处输入图片描述

相关内容