我正在尝试将元素列表添加到longtable
单元格中。
我尝试了几种解决方案,唯一被证明真正适用的是我在下面介绍的解决方案平均能量损失。
主要问题是我想用我定义的颜色(称为)来为表格(交替行)着色lightblue
。
以下是示例:
\documentclass[a4paper]{article}
\usepackage[table]{xcolor}
\usepackage{longtable}
\usepackage{makecell}
\definecolor{lightblue}{rgb}{0.93,0.95,1.0}
\begin{document}
\subsection{Tracciamento} \label{subsec:tracciamento}
\rowcolors{1}{lightblue}{white}
\begin{longtable}[c]{|c|c|}
\hline
\textbf{Fonte} &
\textbf{Requisiti} \\
\hline
Capitolato & \makecell[t]{RF02\\RFD3\\RFD4} \\
\hline
Interno & \makecell[t]{RQO1\\RQO2\\RQD8} \\
\hline
UC 1 &
RF01 \\
\hline
UC 2 &
RF01.1 \\
\hline
\caption{Tracciamento fonte - requisiti} \label{tab:fonte_requisiti}
\end{longtable}
\end{document}
现在,问题在于颜色似乎无法正常工作。
我感谢任何能帮助我解决这个问题的人!
答案1
longtblr
您可以使用tabularray 包来避免此问题:
\documentclass[a4paper]{article}
\usepackage[table]{xcolor}
\definecolor{lightblue}{rgb}{0.93,0.95,1.0}
\usepackage{tabularray}
\begin{document}
\subsection{Tracciamento}
\label{subsec:tracciamento}
\begin{longtblr}[
caption={Tracciamento fonte - requisiti},
label={tab:fonte_requisiti}
]{
colspec={cc},
row{odd}={lightblue},
row{1}={font=\bfseries},
vlines,
hlines
}
Fonte & Requisiti \\
Capitolato & {RF02\\RFD3\\RFD4} \\
Interno & {RQO1\\RQO2\\RQD8} \\
UC 1 & RF01 \\
UC 2 & RF01.1 \\
\end{longtblr}
\end{document}
答案2
这是一个{NiceTabular}
带有 的解决方案nicematrix
。我已将您的代码替换{longtable}
为 ,{NiceTabular}
并将您的指令\rowcolors{1}{lightblue}{white}
放在所谓的\CodeBefore
环境中{NiceTabular}
。
\usepackage{xcolor}
\usepackage{makecell}
\usepackage{nicematrix}
\definecolor{lightblue}{rgb}{0.93,0.95,1.0}
\begin{document}
\subsection{Tracciamento} \label{subsec:tracciamento}
\begin{NiceTabular}[c]{|c|c|}
\CodeBefore
\rowcolors{1}{lightblue}{white}
\Body
\hline
\textbf{Fonte} &
\textbf{Requisiti} \\
\hline
Capitolato & \makecell[t]{RF02\\RFD3\\RFD4} \\
\hline
Interno & \makecell[t]{RQO1\\RQO2\\RQD8} \\
\hline
UC 1 &
RF01 \\
\hline
UC 2 &
RF01.1 \\
\hline
\end{NiceTabular}
\end{document}
与往常一样nicematrix
,您需要进行多次编译。
答案3
Innertabular
可以帮你搞定。你也可以创建一个宏来方便使用:
\documentclass[a4paper]{article}
\usepackage[table]{xcolor}
\usepackage{longtable}
\usepackage{makecell}
\definecolor{lightblue}{rgb}{0.93,0.95,1.0}
\NewDocumentCommand\TB{O{c}O{c}m}{%
\renewcommand\arraystretch{1}%
\begin{tabular}[#1]{@{}#2@{}}#3\end{tabular}}
\begin{document}
\renewcommand*{\arraystretch}{1.25}
\subsection{Tracciamento} \label{subsec:tracciamento}
\rowcolors{1}{lightblue}{white}
\begin{longtable}[c]{|c|c|}
\hline
\textbf{Fonte} & \textbf{Requisiti} \\
\hline
Capitolato & \TB[t]{RF02\\RFD3\\RFD4} \\
\hline
Interno & \TB[t]{RQO1\\RQO2\\RQD8} \\
\hline
UC 1 & RF01 \\
\hline UC 2 & RF01.1 \\
\hline
\caption{Tracciamento fonte - requisiti} \label{tab:fonte_requisiti}
\end{longtable}
\end{document}