Как можно растянуть содержимое таблицы так, чтобы оно было выровнено по всей странице в LaTeX?

Как можно растянуть содержимое таблицы так, чтобы оно было выровнено по всей странице в LaTeX?

Я пытаюсь использовать examкласс для подготовки экзаменационного листа. В верхней части первой страницы необходимо указать время, дату и максимальные баллы. Для этого я создал раздел, tabularвыровняв его по центру, как показано в MWE ниже.

Однако я хотел бы, чтобы строка была распределена по всей странице с равномерным интервалом между столбцами. Как мне этого добиться?

\documentclass[12pt,a4paper,addpoints,answers]{exam}
\begin{document}
\begin{center}
        \Large \textbf{XXX}\\
        \large \textbf{XXX}\\
        \textbf{XXX}\\
        \textbf{XXX}
    \end{center}
\begin{center}
        \begin{tabular}{ c c c }
            \textbf{Time: 3 Hours} & \textbf{Date: 07.12.2019} & \textbf{Max. Marks: 100}
        \end{tabular}
\end{center}
\end{document}

решение1

Хотите что-то подобное?

\documentclass[12pt,a4paper,addpoints,answers]{exam}
\begin{document}
    \begin{center}
        \Large \textbf{XXX}\\
        \large \textbf{XXX}\\
        \textbf{XXX}\\
        \textbf{XXX}
    \end{center}

\textbf{Time: 3 Hours} \hfill \textbf{Date: 07.12.2019} \hfill \textbf{Max. Marks: 100}\\

\hrule % or \hrulefill if necessary.
\end{document}

Я не думаю, что использование табличного метода необходимо для достижения желаемого результата.

решение2

Вы также можете использовать tabular*и \extracolsep(без пакетов).

\documentclass[12pt,a4paper,addpoints,answers]{exam}
\begin{document}
\begin{center}
        \Large \textbf{XXX}\\
        \large \textbf{XXX}\\
        \textbf{XXX}\\
        \textbf{XXX}
    \end{center}
\begin{center}
        \tabcolsep=0pt% visably affects spacing on far right edge
        \begin{tabular*}{\textwidth}{@{\extracolsep{\fill}} c c c }
            \textbf{Time: 3 Hours} & \textbf{Date: 07.12.2019} & \textbf{Max. Marks: 100}
        \end{tabular*}
\end{center}
\end{document}

решение3

С помощью tabularx(таким образом, три столбца будут иметь одинаковую ширину):

\documentclass[12pt,a4paper,addpoints,answers]{exam}
\usepackage{tabularx}
\begin{document}
\begin{center}
        \Large \textbf{XXX}\\
        \large \textbf{XXX}\\
        \textbf{XXX}\\
        \textbf{XXX}
    \end{center}
        \begin{tabularx}{\linewidth}{X>{\centering}X>{\raggedleft}X}
            \textbf{Time: 3 Hours} & \textbf{Date: 07.12.2019} & \textbf{Max. Marks: 100}
        \end{tabularx}
\end{document}

введите описание изображения здесь

решение4

Вам нужно, чтобы средняя часть располагалась по центру под основным заголовком: достаточно сделать правую и левую часть нулевой ширины.

\documentclass[12pt,a4paper,addpoints,answers]{exam}

\usepackage{showframe} % just for the example


\begin{document}
\begin{center}\bfseries
\Large
XXX

\large
XXX\\
XXX\\
XXX

\normalsize

\bigskip

\makebox[0pt][l]{Time: 3 Hours}\hfill
Date: 07.12.2019\hfill
\makebox[0pt][r]{Max. Marks: 100}
\end{center}

\end{document}

Пакет showframeиспользуется только для отображения полей текстового блока.

введите описание изображения здесь

Связанный контент