セクション番号とセクション名を異なる色で色付けするにはどうすればよいですか?

セクション番号とセクション名を異なる色で色付けするにはどうすればよいですか?

\documentclass{book}パッケージを使用する際に、セクション番号とセクション名に異なる色を使用したいと思いますsectsty。セクション番号はカラーボックスに入力する必要があります。アイデアを教えてください。

答え1

sectstyこのタスクには適していないと思います。titlesec代わりにパッケージを使用します。小さな例(好みに応じて色を調整してください):

\documentclass{book}
\usepackage{titlesec}
\usepackage{xcolor}

\colorlet{sectitlecolor}{red!60!black}
\colorlet{sectboxcolor}{cyan!30}
\colorlet{secnumcolor}{orange}

\titleformat{\section}
  {\normalfont\Large\bfseries\color{sectitlecolor}}{\colorbox{sectboxcolor}{\textcolor{secnumcolor}{\thesection}}}{1em}{}

\begin{document}

\chapter{A test chapter}
\section{A test section}

\end{document}

ここに画像の説明を入力してください

コメントでは、セクション番号を左余白に移動するように要求されました。

\documentclass{book}
\usepackage{titlesec}
\usepackage{xcolor}

\colorlet{sectitlecolor}{red!60!black}
\colorlet{sectboxcolor}{cyan!30}
\colorlet{secnumcolor}{orange}

\titleformat{\section}
  {\normalfont\Large\bfseries\color{sectitlecolor}}{\llap{\makebox[3em][l]{\colorbox{sectboxcolor}{\textcolor{secnumcolor}{\thesection}}}}}{0em}{}

\begin{document}

\chapter{A test chapter}
\section{A test section}

\end{document}

答え2

はい、 でそれを行うことができますが、セクション番号を印刷するsectstyの定義を変更する必要があります。\@seccntformat

これにより、サブセクションとサブサブセクションのタイトルにも同じ色が付けられることに注意してください。もちろん、それらに異なる色やボックスを定義することもできます。

ゴンザロと同じ設定を使用しました。

\documentclass{book}

\usepackage{sectsty,xcolor}

\colorlet{sectitlecolor}{red!60!black}
\colorlet{sectboxcolor}{cyan!30}
\colorlet{secnumcolor}{orange}

\sectionfont{\color{sectitlecolor}}

\makeatletter
\renewcommand\@seccntformat[1]{%
  \colorbox{sectboxcolor}{\textcolor{secnumcolor}{\csname the#1\endcsname}}%
  \quad
}
\makeatother

\begin{document}

\chapter{A test chapter}
\section{A test section}

\end{document}

ここに画像の説明を入力してください

関連情報