您好,我正在使用以下代码来生成表格。我的要求是生成适合文本宽度的表格。
\begin{table}[b]\renewcommand{\arraystretch}{2.0}\setlength\LTleft{0pt}\setlength\LTright{0pt}
\begin{longtable}{@{\extracolsep{\fill}} |l|l|l|l| }
\hline
&Written by&Checked by&Approved by\\\hline
\endfirsthead
\hline
&Written by&Checked by&Approved by\\\hline
\endhead
Department&Sales&&\\\hline
Name&ABCD&&\\\hline
Signature&&&\\\hline
Date&21-01-2009&17-06-2019&17-06-2019\\\hline
\end{longtable}\renewcommand{\arraystretch}{1.0}\end{table}
但内容却右对齐,即使我已经提到它是中心对齐。
答案1
您可以使用环境,它将xltabular
的功能带到。longtable
tabularx
另外,我用命令替换了改变的值\arraystretch
,这会使行高不对称地增加,因此单元格的内容将垂直居中。\makegapedcells
makecell
\documentclass{article}
\usepackage[showframe]{geometry}
\usepackage{xltabular}
\usepackage{makecell}
\setcellgapes{6pt}
\begin{document}
{\makegapedcells
\begin{xltabular}{\linewidth}{ |*{4}{X|}}
\hline
&Written by&Checked by&Approved by \\
\hline
\endfirsthead
\hline
&Written by&Checked by&Approved by \\
\hline
\endhead
Department&Sales&& \\
\hline
Name&ABCD&& \\
\hline
Signature&&&\\\hline
Date&21-01-2009&17-06-2019&17-06-2019 \\
\hline
\end{xltabular}}
\end{document}