我将序言中的章节、小节和小节样式重新定义为
\renewcommand\section{%
\@startsection{section}{1}
{\z@}%
{-3.5ex \@plus -1ex \@minus -.2ex}%
{2.3ex \@plus.2ex}%
{\normalfont\normalsize\bfseries\uppercase}%
}
\renewcommand\subsection{%
\@startsection{subsection}{2}
{\z@}%
{-3.25ex\@plus -1ex \@minus -.2ex}%
{2.3ex \@plus.2ex}%
{\normalfont\normalsize\MakeUppercase}
}
\renewcommand\subsubsection{%
\@startsection{subsubsection}{3}
{\z@}%
{-3.25ex\@plus -1ex \@minus -.2ex}%
{2.3ex \@plus.2ex}%
{\normalfont\normalsize\bfseries}
}
我希望它在目录中以相同的方式显示。我尝试使用 tocloft,但它会与其他内容混淆。如何在不使用任何包的情况下做到这一点?
答案1
嗯,找到解决办法了:)
将这段代码放在我的序言中
\let\stdl@section\l@section
\renewcommand*{\l@section}[2]{%
\stdl@section{\normalfont\normalsize\bfseries\uppercase{#1}}
{\normalfont\normalsize\bfseries\uppercase{#2}}}
交易完成了。对 subsection 和 subsubsecion 也可以做同样的事 ;) 只剩下一个小细节:特殊字符不大写,例如:
á é í ó ú à õ ô
我不知道为什么在生成 PDF 时放置\MakeUppercase
而不是\uppercase
会出现随机错误。我会深入研究一下,看看会发生什么。
@Update 猜测 hyperref 包有问题\MakeUppercase
。我删除了 hyperref 包并更改了所有\uppercase
for \MakeUppercase
,它就可以正常工作了。我实际用来修改 ToC 外观的代码是:
\let\stdl@section\l@section
\renewcommand*{\l@section}[2]{%
\stdl@section{\MakeUppercase{#1}}{#2}}
\let\stdl@subsection\l@subsection
\renewcommand*{\l@subsection}[2]{%
\stdl@subsection{\normalfont\MakeUppercase{#1}}{#2}}
\let\stdl@subsubsection\l@subsubsection
\renewcommand*{\l@subsubsection}[2]{%
\stdl@subsubsection{\bfseries{#1}}{#2}}