如何自定义表格列表?

如何自定义表格列表?
\documentclass{book}
\usepackage{multicol}

\begin{document}
\begin{table}
\caption{abcd}
\begin{tabular}{c}
    abcd
\end{tabular}
\end{table}
\begin{table}
    \caption{pqrs}
    \begin{tabular}{c}
        pqrs
    \end{tabular}
\end{table}
\clearpage
\pagebreak
\begin{multicols}{2}
\listoftables
\end{multicols}
\end{document}

此代码提供了如下表格列表 - 多列环境

我想使用包multicol,但我不想让第二列位于标题上方(即表格列表)。我不知道如何将两列放在同一级别。有什么办法吗?

答案1

我会重新定义 \listoftables,将标题绘制在一列中,然后将列表绘制为两列文本。下面 MWE 的解决方案受到以下启发:stackexchange 答案

\documentclass{book}
\usepackage{multicol}

\makeatletter
\renewcommand\listoftables{%
    \chapter*{\Huge\listtablename
        \@mkboth{%
           \MakeUppercase\listtablename}{\MakeUppercase\listtablename}}
    \begin{multicols}{2}
    \@starttoc{lot}%
    \end{multicols}
}
\makeatother

\begin{document}
\begin{table}
\caption{abcd}
\begin{tabular}{c}
    abcd
\end{tabular}
\end{table}
\begin{table}
    \caption{pqrs}
    \begin{tabular}{c}
        pqrs
    \end{tabular}
\end{table}
\clearpage
\pagebreak
\listoftables

\end{document}

相关内容