Table of contents without title
The article
document class defined \tableofcontents
as
\newcommand\tableofcontents{%
\section*{\contentsname
\@mkboth{%
\MakeUppercase\contentsname}{\MakeUppercase\contentsname}}%
\@starttoc{toc}%
}
This prints both the \contentsname
as a \section*
and marks the headers, after which it typesets the actual ToC (via \@starttoc{toc}
). If you forego the header adjustments, merely renewing the \tableofcontents
command to
\renewcommand{\tableofcontents}[1][\contentsname]{%
\section*{#1}
\begin{multicols}{2}
\@starttoc{toc}
\end{multicols}
}
would suffice. This typesets a \section*
with the contents name provided as an optional argument (default is \contentsname
, which is Contents
in article
). Afterwards, if starts a two-column multicol
environment and inserts the ToC. Here's a minimal example:
\documentclass{article}
\usepackage{multicol}% http://ctan.org/pkg/multicol
\makeatletter
\renewcommand{\tableofcontents}[1][\contentsname]{%
\section*{#1}
\begin{multicols}{2}
\@starttoc{toc}
\end{multicols}
}
\makeatother
\begin{document}
\tableofcontents[Table of Contents]
\section{First section}%
\subsection{First subsection}%
\subsection{Second subsection}%
\subsection{Third subsection}%
\subsection{Last subsection}%
\section{Second section}%
\subsection{First subsection}%
\subsection{Second subsection}%
\subsection{Third subsection}%
\subsection{Last subsection}%
\section{Last section}%
\subsection{First subsection}%
\subsection{Second subsection}%
\subsection{Third subsection}%
\subsection{Last subsection}%
\end{document}
For a ToC in multiple columns you can simply use the multitoc package.
\documentclass[11pt,english]{article}
\usepackage[T1]{fontenc}
\usepackage{babel}
\usepackage[margin=1in]{geometry}
\usepackage[toc]{multitoc}
\usepackage{blindtext}
\begin{document}
\tableofcontents
\Blinddocument
\end{document}