表格中最后一列的 raggedleft 不起作用

表格中最后一列的 raggedleft 不起作用

我想要几列右对齐。除了最后一列左对齐外,其他都正常吗?

\NeedsTeXFormat{LaTeX2e}
\documentclass{article}
\usepackage{dcolumn}
\newcolumntype{N}{<{\raggedleft \arraybackslash}b{15ex}}

\begin{document}
\begin{tabular}{l NNN |}
  First & Second & Third & Fourth \\
  \hline
  First    &  1,513 &  1,194 & 1,194 \\
  Second   &  7,831 &  7,783 & 7,763 \\
\end{tabular}
\end{document}

我做错了什么?我尝试了一段时间,但无法让它工作。如果你尝试居中,情况也是一样的

答案1

尝试使用>而不是<这样它将作用于以下列:

\documentclass{article}
\usepackage{dcolumn}
\newcolumntype{N}{>{\raggedleft\arraybackslash}b{15ex}}

\begin{document}
\begin{tabular}{l NNN |}
  First & Second & Third & Fourth \\
  \hline
  First    &  1,513 &  1,194 & 1,194 \\
  Second   &  7,831 &  7,783 & 7,763 \\
\end{tabular}
\end{document}

或者如果你出于某种原因希望它对前一列起作用,请将其放在你的列之后:

\documentclass{article}
\usepackage{dcolumn}
\newcolumntype{N}{b{15ex}<{\raggedleft\arraybackslash}}

\begin{document}
\begin{tabular}{l NNN |}
  First & Second & Third & Fourth \\
  \hline
  First    &  1,513 &  1,194 & 1,194 \\
  Second   &  7,831 &  7,783 & 7,763 \\
\end{tabular}
\end{document}

在此处输入图片描述

答案2

使用最近的包中的 ose array,它也定义w{<align>}{<width>}您可以按如下方式编写表格:

\documentclass{article}
\usepackage{array}

\begin{document}
\begin{tabular}{l *{3}{w{r}{15ex}} |}
  First     & Second    & Third     & Fourth    \\
    \hline
  First     &  1,513    &  1,194    & 1,194     \\
  Second    &  7,831    &  7,783    & 7,763     \\
\end{tabular}
\end{document}

在此处输入图片描述

相关内容