![使用 \multirow 和 \parbox 来设计问题样式,以获得格式良好的表格](https://linux22.com/image/414828/%E4%BD%BF%E7%94%A8%20%5Cmultirow%20%E5%92%8C%20%5Cparbox%20%E6%9D%A5%E8%AE%BE%E8%AE%A1%E9%97%AE%E9%A2%98%E6%A0%B7%E5%BC%8F%EF%BC%8C%E4%BB%A5%E8%8E%B7%E5%BE%97%E6%A0%BC%E5%BC%8F%E8%89%AF%E5%A5%BD%E7%9A%84%E8%A1%A8%E6%A0%BC.png)
以下情况让我很头疼:1) 我想使用 \parbox 在多行区域中显示块文本。使用下面的代码,这行不通。我尝试以多种方式组合 \parbox 和 \multirow,但出现了一些错误... 有人知道这个问题的优雅/简单解决方案吗?2) 我希望有另一种解决方案,而不是通过猜测来写 [36pt]!
相关代码如下:
\begin{table}[!htbp]
\renewcommand{\arraystretch}{1.5}
\begin{tabular}{ | p{0.04\textwidth} | p{0.36\textwidth} | p{0.22\textwidth} | p{0.26\textwidth} |}
\hline
\textbf{Nr.} & \textbf{Metrik} & \textbf{Bewertungsskala} & \textbf{Wertebereich} \\
\hline
1 & Ist das Verfahren im Bezug auf neu entwickelten Code bzw. Features anwendbar? & \multirow[t]{2}{*}{Likert Skala} & \multirow[t]{2}{0.26\textwidth}{{1: Stimme völlig zu\newline 2: Stimme zu\newline 3: Stimme weder zu noch nicht zu\newline 4: Stimme nicht zu\newline 5: Stimme überhaupt nicht zu}} \\ [36pt] \cline{1-2}
2 & Ist das Verfahren im Bezug auf Fehlerkorrekturen anwendbar? & & \\ \hline
\end{tabular}
\caption{Metriken der Kategorie Anwendbarkeit mit Bewertungsskala und dem zulässigem Wertebereich.}
\label{tab:Anwendbarkeit}
\end{table}
提前致谢!
答案1
\parbox{\hsize}{material...}
对我来说,内部工作就\multirow
行了。这能解决你正在寻找的问题吗?
另一方面,\tabularx
环境显示表格会自动填充给定的宽度。按照包文档,您可以以相对方式设置行宽,如下面的代码所示:
\documentclass{article}
\usepackage{multirow, tabularx}
\begin{document}
\begin{table}[!htbp]
\renewcommand{\arraystretch}{1.5}
\begin{tabularx}{\textwidth}{|>{\hsize=0.05\hsize}X|>{\hsize=0.35\hsize}X|>{\hsize=0.3\hsize}X| >{\hsize=0.3\hsize}X|}
\hline
\textbf{Nr.} & \textbf{Metrik} & \textbf{Bewertungsskala} & \textbf{Wertebereich} \\
\hline
1 & Ist das Verfahren im Bezug auf neu entwickelten Code bzw. Features anwendbar? &
\multirow[t]{2}{*}{Likert Skala} &
\multirow[t]{2}{0.26\textwidth}{% <------ % symbol here
\parbox[t]{\hsize}{% <------ % symbol here
1: Stimme völlig zu\newline 2: Stimme zu\newline 3: Stimme weder zu noch nicht zu\newline 4: Stimme nicht zu\newline 5: Stimme überhaupt nicht zu
}
}\\ \cline{1-2}
2 & Ist das Verfahren im Bezug auf Fehlerkorrekturen anwendbar? & & \\ \hline
\end{tabularx}
\caption{Metriken der Kategorie Anwendbarkeit mit Bewertungsskala und dem zulässigem Wertebereich.}
\label{tab:Anwendbarkeit}
\end{table}
\end{document}
请注意,相对宽度因子的\tabularx
总和必须为 1。
答案2
\medskip
只需在最后一行的第二个单元格末尾添加一个,并使用正确的行数即可解决您的问题。我还使用\multirow
较小的表格改进了您的表格:\tabcolsep
tabularx
\documentclass{article}
\usepackage[german]{babel}
\usepackage{multirow, tabularx}
\begin{document}
\begin{table}[!htbp]
\renewcommand{\arraystretch}{1.5}
\setlength{\tabcolsep}{3pt}
\begin{tabularx}{\linewidth}{ | l |>{\hsize=1.26\hsize}X|>{\hsize=0.82\hsize}X| >{\hsize=0.92\hsize}X|}
\hline
\textbf{Nr.} & \textbf{Metrik} & \textbf{Bewertungsskala} & \textbf{Wertebereich} \\
\hline
1 & Ist das Verfahren im Bezug auf neu entwickelten Code bzw. Features anwendbar? & \multirow[t]{10}{*}{Likert Skala} & \multirow[t]{2}{=}{{1: Stimme völlig zu\\ 2: Stimme zu\\ 3: Stimme weder zu noch nicht zu\\ 4: Stimme nicht zu\\5: Stimme \rlap{überhaupt}\\ nicht zu}} \\ %[36pt]
\cline{1-2}
2 & Ist das Verfahren im Bezug auf Fehlerkorrekturen anwendbar? \medskip & & \\ \hline
\end{tabularx}
\caption{Metriken der Kategorie Anwendbarkeit mit Bewertungsskala und dem zulässigem Wertebereich.}
\label{tab:Anwendbarkeit}
\end{table}
\end{document}