![如何使有编号的章节和没有编号的章节的章节标题样式不同?](https://linux22.com/image/285027/%E5%A6%82%E4%BD%95%E4%BD%BF%E6%9C%89%E7%BC%96%E5%8F%B7%E7%9A%84%E7%AB%A0%E8%8A%82%E5%92%8C%E6%B2%A1%E6%9C%89%E7%BC%96%E5%8F%B7%E7%9A%84%E7%AB%A0%E8%8A%82%E7%9A%84%E7%AB%A0%E8%8A%82%E6%A0%87%E9%A2%98%E6%A0%B7%E5%BC%8F%E4%B8%8D%E5%90%8C%EF%BC%9F.png)
我使用以下代码来更改章节标题样式
\usepackage{titlesec}
\definecolor{RoyalRed}{RGB}{157,16,45}
\titleformat{\chapter}[display]
{\centering\normalfont\bfseries\LARGE}
{\flushright\normalsize\color{RoyalRed}
\MakeUppercase{\chaptertitlename}\hspace{1ex} \thechapter}{1pc}
{{\titlerule[0pt]}\vspace{1pc}\MakeUppercase}
但是,我并不想将带有章节号的章节标题置于中央,因此我使用\chapter{Chapter1}
而不是\chapter*{Abstract}
。我想要两种依赖于\chapter
或 的不同标题样式\chapter*
。
任何帮助都将非常有帮助。
答案1
根据 egreg 的建议,你可以使用
\titleformat{name=\chapter,numberless}[display]
{\normalfont\bfseries\LARGE}
{}{1pc}
{{\titlerule[0pt]}\vspace{1pc}\MakeUppercase}
我还添加了一些行\titlespacing
。根据需要调整值。
完整代码:
\documentclass{book}
\usepackage{xcolor,showframe} %% showframe just for demo
\usepackage{titlesec}
\definecolor{RoyalRed}{RGB}{157,16,45}
\titleformat{\chapter}[display]
{\centering\normalfont\bfseries\LARGE}
{\flushright\normalsize\color{RoyalRed}
\MakeUppercase{\chaptertitlename}\hspace{1ex} \thechapter}{1pc}
{{\titlerule[0pt]}\vspace{1pc}\MakeUppercase}
\titleformat{name=\chapter,numberless}[display]
{\normalfont\bfseries\LARGE}
{}{1pc}
{{\titlerule[0pt]}\vspace{1pc}\MakeUppercase}
\titlespacing*{\chapter}{0pt}{0pt}{*30} %% adjust 30 as per need default is 50
\titlespacing*{name=\chapter,numberless}{0pt}{0pt}{*30} %% adjust 30 as per need
\begin{document}
\chapter{Some chapter with number}
\chapter*{Un-numbered chapter}
\end{document}