我在删除在某些情况下插入表格数组中新定义的 itemize 环境中出现的新行时遇到了问题:
\documentclass{article}
\usepackage{enumitem}
\usepackage{tabularray}
\UseTblrLibrary{varwidth}
\usepackage{xcolor}
\newenvironment{xitemize}{%
\itemize[nosep,leftmargin=*]
}{\enditemize
\vspace{-0.2em}
}
\begin{document}
\noindent\begin{tblr}{hlines, vlines, colspec={X[1]X[2]}, measure=vbox, row{1} = {gray8,font=\bfseries}}
Case & Description \\
\textbf{Without first line}
&
\begin{xitemize}
\item Why
\item is
\item a blank line
\item added?
\end{xitemize}
\\
\textbf{With first line}
& Test
\begin{xitemize}
\item This
\item is
\item correct.
\end{xitemize}
\\
\end{tblr}
\end{document}
你能帮我么?
答案1
根据 @hair-splitter 的评论,该选项stretch=-1
解决了我的问题:
\begin{tblr}{hlines, vlines, colspec={p{4cm}X}, measure=vbox, row{1} = {gray8,font=\bfseries}, stretch=-1, rowsep=4pt}
[... table content ...]
\end{tblr}
包文档中讨论了这一点tabularray
:
从版本 2022A(2022-03-01)开始,您可以通过添加选项 stretch=-1 来删除列表上方和下方的额外空间。
添加该选项rowsep=4pt
可以避免表格渲染过于紧凑。