Проблема с горизонтальным выравниванием текста в ячейке при использовании пакета vcell в Latex
Здравствуйте уважаемое сообщество!
Подскажите, пожалуйста, как решить следующую проблему:
Я пытаюсь создать таблицу в Latex, в которой используется различное горизонтальное и вертикальное выравнивание. Для этого я использую пакет vcell. Но я заметил, что если указать горизонтальное выравнивание по центру, то текст выравнивается не правильно.
Например, если я использую следующий код
\documentclass{article}
\usepackage{vcell}
\usepackage{lipsum}
\usepackage{longtable}
\usepackage{array}
\usepackage{url}
\usepackage{geometry}
\geometry{
a4paper,
left=2 cm,
top=2.75 cm,
bottom=4 cm,
right=2 cm,
}
\begin{document}
\begin{longtable}[h!]{|>{\raggedright}p{9 cm}|>{\centering}p{3 cm}|>{\raggedright}p{3,5 cm}|}
\hline
\centering\vcell{File path} &\centering\vcell{Modification date} &\centering\vcell{Content} \tabularnewline [-\rowheight]
\printcellmiddle & \printcellmiddle & \printcellmiddle \tabularnewline \hline
\vcell{\path{some\long\\path}} &\vcell{24.03.2022\newline 08:28:04} & \vcell{Some text from file} \tabularnewline [-\rowheight]
\printcelltop &\printcellmiddle &\printcelltop \tabularnewline \hline
\vcell{\path{some\long\\path}} &\vcell{24.03.2022\newline 08:28:04} & \vcell{Some text from file} \tabularnewline [-\rowheight]
\printcelltop &\printcellmiddle &\printcelltop \tabularnewline \hline
\vcell{\path{some\long\\path}} &\vcell{24.03.2022\newline 08:28:04} & \vcell{Some text from file} \tabularnewline [-\rowheight]
\printcelltop &\printcellmiddle &\printcelltop \tabularnewline \hline
\vcell{\path{some\long\\path}} &\vcell{24.03.2022\newline 08:28:04} & \vcell{Some text from file} \tabularnewline [-\rowheight]
\printcelltop &\printcellmiddle &\printcelltop \tabularnewline \hline
\end{longtable}
\end{document}
то я получаю следующий результат

Как видите выравнивание по центру в колонке "Modification date" не правильное. Но если я добавлю пустую строку (\newline) в конце этих ячеек, выравнивание станет правильным
\documentclass{article}
\usepackage{vcell}
\usepackage{lipsum}
\usepackage{longtable}
\usepackage{array}
\usepackage{url}
\usepackage{geometry}
\geometry{
a4paper,
left=2 cm,
top=2.75 cm,
bottom=4 cm,
right=2 cm,
}
\begin{document}
\begin{longtable}[h!]{|>{\raggedright}p{9 cm}|>{\centering}p{3 cm}|>{\raggedright}p{3,5 cm}|}
\hline
\centering\vcell{File path} &\centering\vcell{Modification date} &\centering\vcell{Content} \tabularnewline [-\rowheight]
\printcellmiddle & \printcellmiddle & \printcellmiddle \tabularnewline \hline
\vcell{\path{some\long\\path}} &\vcell{24.03.2022\newline 08:28:04\newline} & \vcell{Some text from file} \tabularnewline [-\rowheight]
\printcelltop &\printcellmiddle &\printcelltop \tabularnewline \hline
\vcell{\path{some\long\\path}} &\vcell{24.03.2022\newline 08:28:04\newline} & \vcell{Some text from file} \tabularnewline [-\rowheight]
\printcelltop &\printcellmiddle &\printcelltop \tabularnewline \hline
\vcell{\path{some\long\\path}} &\vcell{24.03.2022\newline 08:28:04\newline} & \vcell{Some text from file} \tabularnewline [-\rowheight]
\printcelltop &\printcellmiddle &\printcelltop \tabularnewline \hline
\vcell{\path{some\long\\path}} &\vcell{24.03.2022\newline 08:28:04\newline} & \vcell{Some text from file} \tabularnewline [-\rowheight]
\printcelltop &\printcellmiddle &\printcelltop \tabularnewline \hline
\end{longtable}
\end{document}
Подскажите, пожалуйста, почему так происходит и как решить эту проблему? И как задать отступ текста от верхней границы ячейки, т.к. текст сейчас очень сильно прижимается к ней?
Ответы (1 шт):
Попробуйте заменить команду \newline на \\. Да, она может сломать таблицу, но если применять её в рамках vcell - она работает, и выравнивание улучшилось (хотя конечный результат оценивать Вам).
Изменённый код:
\documentclass{article}
\usepackage{vcell}
\usepackage{lipsum}
\usepackage{longtable}
\usepackage{array}
\usepackage{url}
\usepackage{geometry}
\geometry{
a4paper,
left=2 cm,
top=2.75 cm,
bottom=4 cm,
right=2 cm,
}
\begin{document}
\begin{longtable}[h!]{|>{\raggedright}p{9 cm}|>{\centering}p{3 cm}|>{\raggedright}p{3,5 cm}|}
\hline
\centering\vcell{File path} &\centering\vcell{Modification date} &\centering\vcell{Content} \tabularnewline [-\rowheight]
\printcellmiddle & \printcellmiddle & \printcellmiddle \tabularnewline \hline
\vcell{\path{some\long\\path}} &\vcell{24.03.2022\\ 08:28:04} & \vcell{Some text from file} \tabularnewline [-\rowheight]
\printcelltop &\printcellmiddle &\printcelltop \tabularnewline \hline
\vcell{\path{some\long\\path}} &\vcell{24.03.2022\\ 08:28:04} & \vcell{Some text from file} \tabularnewline [-\rowheight]
\printcelltop &\printcellmiddle &\printcelltop \tabularnewline \hline
\vcell{\path{some\long\\path}} &\vcell{24.03.2022\\ 08:28:04} & \vcell{Some text from file} \tabularnewline [-\rowheight]
\printcelltop &\printcellmiddle &\printcelltop \tabularnewline \hline
\vcell{\path{some\long\\path}} &\vcell{24.03.2022\\ 08:28:04} & \vcell{Some text from file} \tabularnewline [-\rowheight]
\printcelltop &\printcellmiddle &\printcelltop \tabularnewline \hline
\end{longtable}
\end{document}

