koma-script
我正在尝试使用和为章节标题创建自己的样式titlesec
。文档编译正常,但会产生一些错误:
Package titlesec Error: Entered in horizontal mode \chapter{Um capítulo de teste}
Missing number, treated as zero \chapter{Um capítulo de teste}
Illegal unit of measure (pt inserted) \chapter{Um capítulo de teste}
MWE 如下:
\documentclass{scrbook}
\usepackage{fontspec}
\usepackage{polyglossia}
\setmainlanguage{brazil}
\usepackage{fontspec}
\usepackage[dvipsnames]{xcolor}
\usepackage{hyperref}
\usepackage{graphicx}
\usepackage{titlesec}
\titleformat{\chapter}[display]
{\titlerule[.8pt] \vspace{10pt} \bfseries \huge %
{\filleft \hrulefill \chaptertitlename %
\marginpar{\mbox{\fontsize{60}{72}\selectfont\color{gray}\thechapter} } } } %
{}{\titlerule[5pt] %
\vspace{2pc}%
}{}
\begin{document}
\chapter{Um capítulo de teste}
\end{document}
答案1
你使用错误\titleformat
:
\documentclass{scrbook}
\usepackage{fontspec}
\usepackage{polyglossia}
\setmainlanguage{brazil}
\usepackage{fontspec}
\usepackage[dvipsnames]{xcolor}
\usepackage{hyperref}
\usepackage{graphicx}
\usepackage{titlesec}
\titleformat{\chapter}[display]
{\titlerule[.8pt]\vspace{10pt}\bfseries\huge}% before code
{\filleft \hrulefill\ \chaptertitlename %
\smash{\makebox[0pt][l]{\hspace{1cm}\fontsize{60}{72}\selectfont\color{gray}\thechapter}}}% label format
{1ex}% space before the title part
{\titlerule[5pt]\vspace{2pc}}% format before the title
{}% the title
\begin{document}
\chapter{Um capítulo de teste}
\end{document}
不要使用\marginpar
,而是使用一个不占用任何空间的“破碎”盒子,如代码所示。