我对 Latex 还是个新手,我正在编辑一个我找到的带有一些数学公式和极简形式的备忘单模板。这就是为什么我想为章节标题添加彩色背景,以便于阅读。我已经尝试了在 Google 和 Latex 页面中找到的所有方法,但没有成功。
我设法找到了我认为需要更改的部分以实现我想要的效果。我的最佳结果是彩色背景,但标题在新行中(颜色框在一行,标题在另一行),而且行没有在列处停止。
https://github.com/blechturm/MITx_capstone_1/blob/master/content/def.tex 这是我认为需要更改一些代码的地方:
\makeatletter % Author: https://tex.stackexchange.com/questions/218587/how-to-set-one-header-for-each-page-using-multicols
\renewcommand{\section}{\@startsection{section}{1}{0mm}%
{.2ex}%
{.2ex}%x
{\color{black}\sffamily\small\bfseries}}
\renewcommand{\subsection}{\@startsection{subsection}{1}{0mm}%
{.2ex}%
{.2ex}%x
{\sffamily\bfseries}}
任何帮助都值得感激!问候。
答案1
它更易于使用titlesec
。由于您对要实现的目标不太清楚,我仅举一个例子。
\documentclass{article}
\usepackage[svgnames]{xcolor}
\usepackage[explicit]{titlesec}
\titleformat{\section}
[display]
{\sffamily\color{black}\small\bfseries}
{}
{0pt}
{\colorbox{Green!30}{\S\thesection. #1}}
\begin{document}
\section{First section}
\section{Second section}
\end{document}
答案2
我认为我成功做到了我想要的。可能我正在重写第一个 \section 配置,但这个可以工作。我尝试在第一个 renewcommand 中写入相同的内容,但没有成功。
\makeatletter % Author: https://tex.stackexchange.com/questions/218587/how-to-set-one-header-for-each-page-using-multicols
\renewcommand{\section}{\@startsection{section}{1}{0mm}%
{.2ex}%
{.2ex}%x
{\color{black}\sffamily\small\bfseries}
}
\renewcommand{\subsection}{\@startsection{subsection}{1}{0mm}%
{.2ex}%
{.2ex}%x
{\sffamily\bfseries}}
\usepackage{titlesec}
\titleformat{name=\section}[block]
{\color{black}\sffamily\small\bfseries}
{}
{0pt}
{\colorsection}
\newcommand{\colorsection}[1]{%
\colorbox{yellow}{\parbox{\dimexpr\columnwidth-2\fboxsep-2\fboxrule\relax}{\strut\thesection~#1\strut}}}