双栏目录,部分内容进入颜色栏

双栏目录,部分内容进入颜色栏

我正在排版我的化学学期总结(德语),在使用时遇到了以下问题

\begin{multicols}{2}
\tableofcontents
\end{multicols}

附带包装multicol

我制作了彩色部分条Sharpie 的答案在这里

我想知道是否有可能(也许是手动的,但这是LaTeX,所以希望是自动的)调整部分10 Redoxreaktionen以与之对齐1 Stöchiometrie

我可以使用不平衡版本的multicol,但我认为这并不美观。实际上,使用不平衡环境(带有*)并不能消除此问题,因为17 Farben仍会位于目录标题栏中。

这是 MWE,我没有涵盖摘要的每个部分,但描述了我的问题:

\documentclass[12pt,article,a4paper]{scrartcl}
\title{\textbf{GF\,CH: Themen für die mündliche Prüfung}}
\date{Montag, 1.7.2019}
\author{}
\usepackage[german]{babel}
\usepackage{multicol}

\usepackage{xcolor}
\definecolor{myorange}{RGB}{255,127.5,0}

\usepackage{tikz}
\tikzset{
  % Styling of header text is done using key/value options for TikZ nodes. See
  % section 16.4 of the PGF manual for a complete list of options that affect
  % text.
  headings/base/.style = {
    % Zap node seperation, set text width and alignment.
    outer sep = 0pt,
    % Trim off 2/3rd of an em to compensate for the inner xsep which spaces the
    % text nicely away from the left side, but causes the node to hang into the
    % right margin.
    text width = {\textwidth - 0.6666em},
    align = left,
    text = black,
  },
  headings/section/.style = {
    headings/base,
    fill = myorange!50,
    font = \sffamily\large
  },
  headings/subsection/.style = {
    headings/base,
    fill = myorange!25,
    font = \sffamily\large
  }
}

\newcommand{\colorboxedsec}[2]{%
  \tikz{\node[headings/#1]{#2};}}

\setkomafont{section}{\colorboxedsec{section}}
\setkomafont{subsection}{\colorboxedsec{subsection}}




\begin{document}
\pagenumbering{roman}
\maketitle
\begin{multicols*}{2}
\tableofcontents
\end{multicols*}

\pagenumbering{arabic}
\section{Stöchiometrie}
\section{Die Geometrie von Teilchen}
\section{Zwischenpartikulare Kräfte}
\subsection{van}
\section{Reaktionsgeschwindigkeit} 
\section{Das chemische Gleichgewicht}
\section{Beeinflussung von chemischen Gleichgewichten}
\section{Fällungsreaktionen}
\section{Komplexreaktionen}
\section{S/B-Reaktionen}
\section{Redoxreaktionen} 
\section{Titration}
\section{Der pH-Wert} 
\section{Der (technische) Kalkkreislauf} 
\section{Chiralität}
\section{E/Z-Isomerie}
\section{Mesomerie und Farbe}
\section{Farben}
\section{Sprengstoffe}
\section{Proteine}
\section{Enzyme}
\section{Nervengifte, Rauschgifte}

\end{document}

答案1

您似乎已使章节标题具有完整的文本宽度,因此如果您在 multicols 中使用 \tableofcontents,它自然会覆盖到右列(如果您使用 \twocolumn,则很可能相同)。

因此,您要么需要让标题使用 \columnwidth,要么必须重新定义 \tableofcontents,以便它调用 multicols 并将 \section*{...} 保留在其外部。我认为这就是您想要的。

答案2

添加\makeatletter命令解决了我的问题:

\documentclass[12pt,article,a4paper]{scrartcl}
\title{\textbf{GF\,CH: Themen für die mündliche Prüfung}}
\date{Montag, 1.7.2019}
\author{}
\usepackage[german]{babel}
\usepackage{multicol}

\usepackage{xcolor}
\definecolor{myorange}{RGB}{255,127.5,0}

\usepackage{tikz}
\tikzset{
  % Styling of header text is done using key/value options for TikZ nodes. See
  % section 16.4 of the PGF manual for a complete list of options that affect
  % text.
  headings/base/.style = {
    % Zap node seperation, set text width and alignment.
    outer sep = 0pt,
    % Trim off 2/3rd of an em to compensate for the inner xsep which spaces the
    % text nicely away from the left side, but causes the node to hang into the
    % right margin.
    text width = {\textwidth - 0.6666em},
    align = left,
    text = black,
  },
  headings/section/.style = {
    headings/base,
    fill = myorange!50,
    font = \sffamily\large
  },
  headings/subsection/.style = {
    headings/base,
    fill = myorange!25,
    font = \sffamily\large
  }
}

\newcommand{\colorboxedsec}[2]{%
  \tikz{\node[headings/#1]{#2};}}

\setkomafont{section}{\colorboxedsec{section}}
\setkomafont{subsection}{\colorboxedsec{subsection}}

\makeatletter
\renewcommand\tableofcontents{%
    \@starttoc{toc}%
}
\makeatother


\begin{document}
\pagenumbering{roman}
\maketitle
\section*{Inhaltsverzeichnis}
\begin{multicols}{2}
\tableofcontents
\end{multicols}

\pagenumbering{arabic}
\section{Stöchiometrie}
\section{Die Geometrie von Teilchen}
\section{Zwischenpartikulare Kräfte}
\subsection{van}
\section{Reaktionsgeschwindigkeit} 
\section{Das chemische Gleichgewicht}
\section{Beeinflussung von chemischen Gleichgewichten}
\section{Fällungsreaktionen}
\section{Komplexreaktionen}
\section{S/B-Reaktionen}
\section{Redoxreaktionen} 
\section{Titration}
\section{Der pH-Wert} 
\section{Der (technische) Kalkkreislauf} 
\section{Chiralität}
\section{E/Z-Isomerie}
\section{Mesomerie und Farbe}
\section{Farben}
\section{Sprengstoffe}
\section{Proteine}
\section{Enzyme}
\section{Nervengifte, Rauschgifte}

\end{document}

相关内容