
У меня в таблице есть предложение, которое слишком длинное и выводит таблицу за пределы страницы. Как мне разделить предложение на несколько строк, чтобы оно не испортило макет таблицы?
\begin{table}[!htb]
\caption{}
\centering
\begin{tabular}{llll}
\hline
Material & Production & Description & Reference \\
\hline
& a bene placito a bene placito a bene placito a bene placito & & \\
\hline
\end{tabular}
\end{table}
Заранее спасибо.
решение1
Используйте p{<width>}
для столбца с длинным предложением. Ширина может быть в см, пт или другой ширине, допустимой для LaTeX.
\documentclass{article}
\begin{document}
\begin{table}[!htb]
\caption{}
\centering
\begin{tabular}{lp{4cm}ll}
\hline
Material & Production & Description & Reference \\
\hline
& a bene placito a bene placito a bene placito a bene placito & & \\
\hline
\end{tabular}
\end{table}
\end{document}
Чтобы получить более красивую таблицу, я предлагаю загрузить пакеты array
и booktabs
и использовать \toprule
, midrule
и bottomrule
вместо \hline
.
p{}
-columns по умолчанию выровнены, поэтому вы также можете рассмотреть возможность установки широкого столбца рваным справа. Стандартный LaTeX \raggedright
не делает переносы слов, поэтому если ваш текст очень рваный, вам нужно сделать переносы в рваном столбце. Загрузить пакетragged2eв преамбуле и используйте команду \RaggedRight
вместо \raggedright
. В вашем примере вы не увидите никакой разницы, но попробуйте узкий столбец с несколькими длинными словами. Вот измененный MWE:
\documentclass{article}
\usepackage{ragged2e,array,booktabs}
\begin{document}
\begin{table}[!htb]
\caption{}
\centering
\begin{tabular}{l>{\RaggedRight}p{4cm}ll}
\toprule
Material & Production & Description & Reference \\
\midrule
& a bene placito a bene placito a bene placito a bene placito & & \\
\bottomrule
\end{tabular}
\end{table}
\end{document}