info###latexinfo.ru

Как в таблице убрать длинные пробелы при выравнивании текста?

Рассмотрим пример стандартной таблицы с выравниванием текста по ширине (например, p{5cm}) в Latex:

\begin{tabular}{|c|p{3.5cm}|p{3.5cm}|}\hline
1 & Первое длинное предложение & Второе длинное предложение\\ \hline
2 & Первое длинное предложение во второй строке & Второе длинное предложение во второй строке таблицы\\ \hline
3 & Первое длинное предложение в третьей строке таблицы & Второе длинное предложение в третьей строке\\ \hline
\end{tabular}

Результат в PDF после компиляции:

как выглядит таблица в pdf с выравниванием по ширине

Получились длинные растянутые пробелы почти во всех ячейках таблицы. От них можно избавиться, сделав выравнивание текста по левому краю с помощью команды >{\raggedright\arraybackslash} следующим образом:

\usepackage{array} % добавить пакет для работы команды arraybackslash
...
\begin{tabular}{|c|>{\raggedright\arraybackslash}p{3.5cm}|>{\raggedright\arraybackslash}p{3.5cm}|}\hline
1 & Первое длинное предложение & Второе длинное предложение\\ \hline
2 & Первое длинное предложение во второй строке & Второе длинное предложение во второй строке таблицы\\ \hline
3 & Первое длинное предложение в третьей строке таблицы & Второе длинное предложение в третьей строке\\ \hline
\end{tabular}

Получим более красивый вариант таблицы без дополнительных пробелов между словами:

как выглядит таблица с выравниванием слева

Хотелось бы еще убрать пробелы справа после слов. Это можно сделать, используя пакет ragged2e и команду >{\RaggedRight\hspace{0pt}}:

\usepackage{array} % для работы команды arraybackslash
\usepackage{ragged2e} % выравнивание по левому краю с переносами
...
\begin{tabular}{|c|>{\RaggedRight\hspace{0pt}}p{3.5cm}|>{\RaggedRight\hspace{0pt}}p{3.5cm}|}\hline
1 & Первое длинное предложение & Второе длинное предложение\\ \hline
2 & Первое длинное предложение во второй строке & Второе длинное предложение во второй строке таблицы\\ \hline
3 & Первое длинное предложение в третьей строке таблицы & Второе длинное предложение в третьей строке\\ \hline
\end{tabular}

В результате получим переносы в словах во всех ячейках, включая верхнюю строку:

как выглядит таблица с выравниванием слева с переносами слов

LaTeX для всех
  • длинные пробелы в таблице в latex
  • пакет array
  • пакет ragged2e
  • способы выравнивания текста в таблицах латех
  • примеры выравнивания в строках
Находясь на нашем сайте, вы принимаете условия использования файлов cookies. Более подробная информация здесь.