Вертикальный интервал ячеек, содержащих парбокс
У меня сложный longtable с несколькими уровнями вложенных табличных сред. Однако, чтобы получить перенос текста внутри ячеек и выровнять содержимое по верху, я использую \parbox[t][][t], однако высота парбокса вычисляется без каких-либо полей, так что следующая \hline перекрывается с текстом.
Минимальный пример для воспроизведения этого поведения
\documentclass{article}
\begin{document}
\begin{tabular} {|p{0.2\textwidth}|}
\hline
This cell looks good. \\
\hline
\parbox[t][][t]{1.0\linewidth}{
Not so happy with this.
} \\
\hline
\end{tabular}
\end{document}
Это приводит к следующему выводу (извините, пока нельзя публиковать изображения): изображение сгенерированного вывода
Конечно, нет причин использовать parbox в приведенном выше примере, но они нужны мне в настоящем документе.
Я хотел бы избежать указания высоты парбокса (например, \parbox[t][5cm][t]). Есть ли чистый способ добавить поле в нижней части парбокса или перед хлайном?
1 ответ
Извините, что отвечаю на мой собственный вопрос, но я нашел решение, добавив vspace к каждой ячейке за пределами parbox.
Вот код:
\documentclass{article}
\begin{document}
\newcommand{\pb}[1]{\parbox[t][][t]{1.0\linewidth}{#1} \vspace{-2pt}}
\begin{tabular} {|p{0.2\textwidth}|}
\hline
This cell looks good. \\
\hline
\pb{
Now I'm happy with this.
} \\
\hline
\end{tabular}
\end{document}
Вывод: изображение сгенерированного вывода
Я пропустил это раньше, потому что у меня не было пробела между закрывающей скобкой парбокса и vspace. Оказывается, что пространство имеет решающее значение.