titlesec 与 sectsty 不兼容

titlesec 与 sectsty 不兼容

我习惯使用该包titlesec来更改部分字体。现在我想让所有部分都变成蓝色,我发现使用该sectsty包可以轻松实现这一点。这非常有用,因为我不必单独更改所有类型,而是可以一次性更改所有类型。不幸的是,titlesec正如您在 MWE 上看到的那样,它与 MWE 不兼容。

\documentclass[12pt]{book}

\usepackage[T1]{fontenc} 
\usepackage[utf8]{inputenc} 
\usepackage[french]{babel} 
\usepackage{xcolor}

\usepackage{sectsty} 
\usepackage{titlesec}

\titleformat*{\section}{\Large\scshape\bfseries} 
\titleformat*{\subsection}{\large\scshape\bfseries} 

\allsectionsfont{\color{blue}{}}

\begin{document}

\chapter{First Chapter}

\section{First section}

blabla

\section{Second section} \subsection{Subsection}

blabla

\end{document}

带有 的部分\titleformat*不是蓝色,如果 在\usepackage{titlesec}之前\usepackage{sectsty},所有部分都是蓝色,但我丢失了字体的变化。

看起来很正常,最后调用的包定义了样式,但我怎样才能同时做到这两点呢?

答案1

如果您要更改每个部分级别的字体,则需要\color使用 将命令添加到这些更改中sectsty。但是 Latin Modern 中没有粗体小写字体,因此您需要在粗体和小写之间进行选择。

\documentclass[12pt]{book}
\usepackage[T1]{fontenc} 
\usepackage[utf8]{inputenc} 
\usepackage[french]{babel} 
\usepackage{xcolor}
\usepackage{sectsty}
\allsectionsfont{\color{blue}}
\sectionfont{\normalfont\Large\scshape\color{blue}} 
\subsectionfont{\normalfont\large\scshape\color{blue}}
\begin{document}
\tableofcontents
\chapter{First Chapter}
\section{First section}
blabla
\section{Second section} 
\subsection{Subsection}
\section*{Unnumbered section}
\end{document}

相关内容