我从论坛中的另一个问题复制了此代码。但是,如何更改此特定行的宽度(参见 %此行 -> 如何更改宽度?)以使其自动调整到此行内的文本?不幸的是,文本“重叠”。
谢谢,
\documentclass{article}
\usepackage{amssymb}
\usepackage{array}
\usepackage{tabularx}
\newcolumntype{S}{>{\centering\arraybackslash}m{1.5em}}
\renewcommand{\tabularxcolumn}[1]{m{#1}} % redefine 'X' to use 'm'
\begin{document}
\makebox[\textwidth]{%
\begin{tabularx}{1.2\textwidth}{|X|S|S|S|S|S|X|}
\hline
QUESTION? & $ BEISPIEL1 $ & $ BEISPIEL2 $ & $ BEISPIEL3 $ & $ BEISPIEL4 $ & $++$ &\\
\hline %this line -> how to change width?
is complicated to use & $\square$ & $\square$ & $\square$ & $\square$ & $\square$ & is not complicated to use\\
\hline
bietet nicht alle Funktionen um die anfallenden Aufgaben effizient zu bewältigen & $\square$ & $\square$ & $\square$ & $\square$ & $\square$ & bietet alle Funktionen, um die anfallenden Aufgaben effizient zu bewältigen
\end{tabularx}%
}
\end{document}
答案1
像这样:
\documentclass[ngerman]{article}
\usepackage{babel}
\usepackage{amssymb}
\usepackage{ragged2e}
\usepackage{array, makecell, multirow, tabularx}
\newcolumntype{L}{>{\RaggedRight}X}
\renewcommand{\tabularxcolumn}[1]{m{#1}} % redefine 'X' to use 'm'
\begin{document}
\noindent\begin{tabularx}{\textwidth}{|L|*{5}{>{\centering}m{1.5em}}|L|}
\hline
\multirow{2}{*}{QUESTION?}
& \multicolumn{5}{c|}{BEISPIEL}
& \\
\cline{2-6}
& 1 & 2 & 3 & 4 & $++$ & \\
\Xhline{1pt} %this line -> how to change width?
is complicated to use
& $\square$ & $\square$ & $\square$ & $\square$ & $\square$
& is not complicated to use\\
\hline
bietet nicht alle Funktionen um die anfallenden Aufgaben effizient zu bewältigen
& $\square$ & $\square$ & $\square$ & $\square$ & $\square$
& bietet alle Funktionen, um die anfallenden Aufgaben effizient zu bewältigen
\end{tabularx}
\end{document}
笔记:
- 在您的情况下,使用某些包定义的列带符号 w
siunitx
并不是一个好主意 - 对于较厚的
\hline
使用在包Xhline{<width}
中定义makecell
- 请始终提供完整的 MWE(如果您遗漏了
\documentclas{...}