表格中的水平对齐问题

表格中的水平对齐问题

这是对“表格中的对齐问题“。

考虑以下代码:

\documentclass[
  a4paper,
  12pt,
  landscape,
  danish
]{article}

\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\usepackage{babel}
\usepackage[
  hmargin = 2.4cm,
  vmargin = 3cm
]{geometry}
\usepackage{fancyhdr}
\usepackage{booktabs}
\usepackage{siunitx}

\newcommand*\mc[1]{\multicolumn{3}{@{}c@{\mlrA}}{#1}}
\newcommand*\MC[1]{\multicolumn{3}{@{}c@{\mlrA}}{$\langle$#1$\rangle$}}
\newcommand*\Alignment[1]{%
  \multicolumn{1}{r@{}}{\llap{\makebox[\widthof{--}][c]{#1}}}}

\def\mlrA{\hskip 2.5em}
\def\mlrB{\hskip 0.8em}
\def\mlrC{3ex}

\pagestyle{fancy}
\renewcommand*\headrulewidth{0pt}
\setlength\headheight{14.5pt}
\lhead{}
\rhead{}
\cfoot{}

\begin{document}

\begin{center}
  \textbf{\Huge Skema~2015--2016}
  \vspace{10ex}

  \renewcommand*{\arraystretch}{1.2}
  \begin{tabular}{
         S[table-format = 2] @{\mlrB}
         r @{\,--\,}
    *{5}{
         l @{\mlrA}
         l @{\mlrB}
         l @{\mlrB}
        }
         l
  }
   \toprule
    {Lektion}
    & \multicolumn{2}{@{}c@{\mlrA}}{Tidspunkt}
    & \multicolumn{3}{@{}c}{Mandag}
    & \multicolumn{3}{@{}c}{Tirsdag}
    & \mc{Onsdag}
    & \multicolumn{3}{@{}c}{Torsdag}
    & \multicolumn{3}{@{}c}{Fredag} \\
   \midrule
     1 &  8:10 &  8:55 &     &      &         & 7.C & F/K  & fys & 5.A & MAT  & 09 &     &     &     & 7.C & MAT & 22 \\[\mlrC]
     2 &  8:55 &  9:40 &     &      &         & 7.C & F/K  & fys & 5.A & N/T  & 09 &     &     &     & 7.C & STU & 22 \\[\mlrC]
     3 & 10:00 & 10:45 & 8.  & IDR  & hal/gym & 5.A & MAT  & 09  & 7.C & STU  & 22 & 7.C & BIO & bio & \MC{Fagdag}    \\[\mlrC]
     4 & 10:45 & 11:30 & 8.  & IDR  & hal/gym & 5.A & MAT  & 09  &     &      &    & 7.C & BIO & bio & \MC{Fagdag}    \\[\mlrC]
     5 & 11:30 & 12:00 & 5.A & FORD & 09      & 7.C & FORD & 22  & 5.A & FORD & 09 &     &     &     & \MC{Fagdag}    \\[\mlrC]
     6 & 12:40 & 13:25 & 7.C & GEO  & 22      & 5.A & HIS  & 09  & 7.C & MAT  & 22 &     &     &     & \MC{Fagdag}    \\[\mlrC]
     7 & 13:25 & 14:10 & 7.C & GEO  & 22      & 5.A & HIS  & 09  & 7.C & MAT  & 22 &     &     &     & \MC{Fagdag}    \\[\mlrC]
     8 & 14:25 & 15:10 & 7.C & MAT  & 22      &     &      &     &     &      &    & \mc{5.~årgang}  & \multicolumn{3}{@{}c@{\mlrA}}{($\langle$Fagdag$\rangle$)} \\[\mlrC]
     9 & 15:10 & 16:10 & \mc{7.~årgang}       & \mc{Fløj}        &     &      &    & \mc{5.~årgang}  &     &     &    \\[\mlrC]
    10 & 16:00 & 17:00 &     &      &         & \mc{Fløj}        &     &      &    &     &     &     &     &     &    \\
   \bottomrule
  \end{tabular}
\end{center}

\end{document}

输出

如何将<Fagdag>(和(<Fagdag>))置于最后一列的中心?

我猜这个问题是由于我的一个简单错误造成的,但我不明白它是什么。

更新

是否有人回答我的问题(Sunilkumar KS 在评论中给出了解决方案),我会接受它,然后我们可以从未回答列表中删除该问题。

答案1

在此处输入图片描述

你的最后四列是

   l spaceA 
   l spaceB 
   l spaceB
   l \tabcolsep

因此,您\multicolumn{3}需要@{}在左侧添加任何空格(前一列的空格 B 将存在),然后在右侧添加任何内容以匹配指定的列空格,因此您需要

 \newcommand*\MC[1]{\multicolumn{3}{@{}c}{$\langle$#1$\rangle$}}

完整文件:

\documentclass[
  a4paper,
  12pt,
  landscape,
  danish
]{article}

\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\usepackage{babel}
\usepackage[
  hmargin = 2.4cm,
  vmargin = 3cm
]{geometry}
\usepackage{fancyhdr}
\usepackage{booktabs}
\usepackage{siunitx}

\newcommand*\mc[1]{\multicolumn{3}{@{}c@{\mlrA}}{#1}}
\newcommand*\MC[1]{\multicolumn{3}{@{}c}{$\langle$#1$\rangle$}}
\newcommand*\Alignment[1]{%
  \multicolumn{1}{r@{}}{\llap{\makebox[\widthof{--}][c]{#1}}}}

\def\mlrA{\hskip 2.5em}
\def\mlrB{\hskip 0.8em}
\def\mlrC{3ex}

\pagestyle{fancy}
\renewcommand*\headrulewidth{0pt}
\setlength\headheight{14.5pt}
\lhead{}
\rhead{}
\cfoot{}

\begin{document}

\begin{center}
  \textbf{\Huge Skema~2015--2016}
  \vspace{10ex}

  \renewcommand*{\arraystretch}{1.2}
  \begin{tabular}{
         S[table-format = 2] @{\mlrB}
         r @{\,--\,}
    *{5}{
         l @{\mlrA}
         l @{\mlrB}
         l @{\mlrB}
        }
         l
  }
   \toprule
    {Lektion}
    & \multicolumn{2}{@{}c@{\mlrA}}{Tidspunkt}
    & \multicolumn{3}{@{}c}{Mandag}
    & \multicolumn{3}{@{}c}{Tirsdag}
    & \mc{Onsdag}
    & \multicolumn{3}{@{}c}{Torsdag}
    & \multicolumn{3}{@{}c}{Fredag} \\
   \midrule
     1 &  8:10 &  8:55 &     &      &         & 7.C & F/K  & fys & 5.A & MAT  & 09 &     &     &     & 7.C & MAT & 22 \\[\mlrC]
     2 &  8:55 &  9:40 &     &      &         & 7.C & F/K  & fys & 5.A & N/T  & 09 &     &     &     & 7.C & STU & 22 \\[\mlrC]
     3 & 10:00 & 10:45 & 8.  & IDR  & hal/gym & 5.A & MAT  & 09  & 7.C & STU  & 22 & 7.C & BIO & bio & \MC{Fagdag}    \\[\mlrC]
     4 & 10:45 & 11:30 & 8.  & IDR  & hal/gym & 5.A & MAT  & 09  &     &      &    & 7.C & BIO & bio & \MC{Fagdag}    \\[\mlrC]
     5 & 11:30 & 12:00 & 5.A & FORD & 09      & 7.C & FORD & 22  & 5.A & FORD & 09 &     &     &     & \MC{Fagdag}    \\[\mlrC]
     6 & 12:40 & 13:25 & 7.C & GEO  & 22      & 5.A & HIS  & 09  & 7.C & MAT  & 22 &     &     &     & \MC{Fagdag}    \\[\mlrC]
     7 & 13:25 & 14:10 & 7.C & GEO  & 22      & 5.A & HIS  & 09  & 7.C & MAT  & 22 &     &     &     & \MC{Fagdag}    \\[\mlrC]
     8 & 14:25 & 15:10 & 7.C & MAT  & 22      &     &      &     &     &      &    & \mc{5.~årgang}  & \multicolumn{3}{@{}c@{\mlrB}}{($\langle$Fagdag$\rangle$)} \\[\mlrC]
     9 & 15:10 & 16:10 & \mc{7.~årgang}       & \mc{Fløj}        &     &      &    & \mc{5.~årgang}  &     &     &    \\[\mlrC]
    10 & 16:00 & 17:00 &     &      &         & \mc{Fløj}        &     &      &    &     &     &     &     &     &    \\
   \bottomrule
  \end{tabular}
\end{center}

\end{document}

相关内容