所以我有三个文件。我的主要 .tex 文件、我的 .cls 文件和我的 .bib 文件。在我的 .cls 文件中,我使用这两个函数:
\newcommand{\coloredtitle}\[2]{
\tikz[baseline=(char.base)]
\node[anchor=north west, draw, rectangle, inner sep=3pt, minimum size=8mm, text height=4mm, text width=\paperwidth/2, fill=#2,#2,text=white](char){#1};
}
\renewcommand{\section}[1]{
{
\Large\coloredtitle{#1}{mainblue}
}
}
然后,在我的 .tex 文件中,我使用:
\section{Organismes}
结果如下:
所以,到目前为止没有问题...但如果我插入参考书目或目录,我会得到以下结果:
所以,正如你所看到的,我有蓝色背景,但文本实际上在外面,里面有一个“*”。
目录的结果基本相同。
似乎参考书目和目录都被视为章节,并且 \refname 不是标题的一部分,或者其他东西。
有人有想法吗?
提前致谢!
答案1
您应该使用更高级别的包来重新定义格式\section
。
\documentclass{article}
\usepackage{tikz}
\usepackage{titlesec}
\colorlet{mainblue}{blue} % just for the example
\titleformat{name=\section}
{\Large}
{}
{0pt}
{\coloredtitle{mainblue}}
\newcommand{\coloredtitle}[2]{%
\tikz[baseline=(char.base)]
\node[
anchor=north west,
draw,
rectangle,
inner sep=3pt,
minimum size=8mm,
text height=4mm,
text width=\paperwidth/2,
fill=#1,
#1,
text=white
](char){#2};%
}
\begin{document}
\section{Organismes}
\section*{References}
\end{document}
问题在于\section*{References}
底层的参考书目问题,但按照你幼稚的定义,标题被视为*
。
使用上述代码,我们重新定义编号和未编号的部分以具有相同的行为。