Очень похоже, что в общем случае в latex нельзя нормально работать с multirow.
Простой пример:
Я так и не нашёл адекватного способа решения этой проблемы.
Один из предлагаемых способов - вообще не использовать multirow:
По очевидным причинам такой способ не подходит.
Можно гарантировать минимальную высоту ячейки при помощи команды \rule:
Визуально это именно то что нам нужно. Проблема только в том, что для каждого конкретного случая придётся подгонять свои размеры.
Последний способ взят из весьма занятной книги "LATEX Table Hints and Tips" - Adrian P. Robson.
Простой пример:
\begin{tabular}{|c|c|}
\hline
1 & \multirow{2}{2cm}{очень очень очень длинный текст} \\
\cline{1-1}
2 & \\
\hline
\end{tabular}
Я так и не нашёл адекватного способа решения этой проблемы.
Один из предлагаемых способов - вообще не использовать multirow:
\begin{tabular}{|c|p{2cm}|}
\hline
1 & Очень длинный текст \\
\cline{1-1}
2 & \\
\hline
\end{tabular}
По очевидным причинам такой способ не подходит.
Можно гарантировать минимальную высоту ячейки при помощи команды \rule:
\newlength{\rowDepth}
\setlength{\rowDepth}{0.9cm}
\newcommand{\rowStrut}{\rule[-0.45\rowDepth]{0pt}{\rowDepth}}
\begin{tabular}{|c|c|}
\hline
1 & \multirow{2}[4]{2cm}{очень очень очень длинный текст} \rowStrut \\
\cline{1-1}
2 & \rowStrut \\
\hline
\end{tabular}
Визуально это именно то что нам нужно. Проблема только в том, что для каждого конкретного случая придётся подгонять свои размеры.
Последний способ взят из весьма занятной книги "LATEX Table Hints and Tips" - Adrian P. Robson.
Комментариев нет:
Отправить комментарий
Примечание. Отправлять комментарии могут только участники этого блога.