我正在用 LaTeX 写一篇论文,我想使用titlesec
自定义标题样式,当我尝试将我的自定义样式应用到我的章节标题时,它起作用了。
但是,当我尝试将自定义样式应用到我的部分时,部分标题消失了,如下图所示:
这是我的标题中的代码:
\documentclass[a4paper,12pt,oneside]{book}
%header information
\usepackage{blindtext, array, color}
\definecolor{gray75}{gray}{0.75}
\newcommand{\hsp}{\hspace{20pt}}
\usepackage[explicit]{titlesec}
\titleformat{\chapter}[block]{\Huge\bfseries}{\color{gray75}\thechapter}{20pt}{\begin{tabular}[t]{@{\color{gray75}\vrule width 2pt}>{\hsp}l}#1\end{tabular}}
\titleformat{\section}[block]
{\Large\bfseries}{\color{gray75}\thesection}{12pt}{}
\usepackage{graphicx}
\usepackage{amsmath}
\usepackage[style=ieee,backend=bibtex]{biblatex}
\usepackage[paper=a4paper,left=25mm,right=25mm,top=25mm,bottom=25mm]{geometry}
\usepackage{setspace}
\usepackage{fancyhdr}
\renewcommand{\headrulewidth}{0pt}
\fancyhf{}
\cfoot{\thepage}
\pagestyle{fancy}
\setstretch{1.3}
\DeclareGraphicsExtensions{.pdf,.png,.jpg}
\newcommand{\abbrlabel}[1]{\makebox[3cm][l]{\textbf{#1}}}
\newenvironment{abbreviations}{\begin{list}{}{\renewcommand{\makelabel}{\abbrlabel}}}{\end{list}}
\addbibresource{references.bib}
\begin{document}
我不明白发生了什么事!
答案1
由于您正在使用explicit
,因此该部分的代码应为
\titleformat{\section}[block]
{\Large\bfseries}{\color{gray75}\thesection}{12pt}{#1}
但是,我通常不喜欢使用该选项:如果您定义一个合适的单参数宏并将代码保存在不同的位置,则会更容易,从而减少混乱。
\documentclass[a4paper,12pt,oneside]{book}
\usepackage{color}
\usepackage{array}
\usepackage{titlesec}
\definecolor{gray75}{gray}{0.75}
\titleformat{\chapter}[block]
{\Huge\bfseries}
{\color{gray75}\thechapter}
{20pt}
{\formatchapter}
\titleformat{\section}[block]
{\Large\bfseries}
{\color{gray75}\thesection}{12pt}
{}
\newcommand{\formatchapter}[1]{%
\begin{tabular}[t]{@{\color{gray75}\vrule width 2pt}>{\hspace{20pt}}l}
#1
\end{tabular}%
}
\begin{document}
\chapter{State of the art}
\section{First section}
\end{document}