我一直在为我的文档制作自定义标题演示,标题为、和\part{}
。\chapter{}
我还使用扩展在文档开头做摘要,然后在文档结尾显示完整的目录。\section{}
paragraph{}
shorttoc
我的问题是,我的 shorttoc 和 toc 都无法像其他样式那样显示。我希望它们能够像 a 那样显示,\part{}
但我不知道该怎么做。
我在网上搜索了一下,找到了一些不相似但目的相同的内容。提出了以下代码来帮助她解决问题:
\makeatletter
\def\@cftmaketoctitle{\chapter*{\contentsname}}
\makeatother
我没有找到可行的解决方案,因为提问者使用的是 tocloft 扩展,而我使用的是 shorttoc 和普通的\tableofcontents
我首先用\chapter*
来替换,\part*
因为我希望我的头衔为\part
。
然后我遇到了问题\@cftmaketoctitle
。我尝试用它编译我的文档,但没有发现任何变化。所以我尝试用和替换它,\@shorttableofcontents
如下\@cftshorttableofcontents
所示,没有看到任何变化:
\makeatletter
\def\@shorttableofcontents{\part*{\contentsname}}
\makeatother
我是 LaTeX 编程的新手,很难理解这一点\@
,我已经明白这\def
相当于LaTeX TeX
,\newcommand
但我很难走得更远。
你们中有谁可以帮我设计我的 shorttoc 和 toc 标题作为一部分吗?
这是我的 MWE:
\documentclass[11pt,a4paper,oneside,openright]{book}
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\usepackage{lipsum}% Pour générer du faux texte}
\usepackage{shorttoc}% Gestion du sommaire
\usepackage{titlesec}
\usepackage[french]{babel}% Pour un document en français
% --------------------------------------------------
% Paramétrage des parties
% --------------------------------------------------
\titleclass{\part}{top}
\titleformat{\part}[frame]
{\null\vspace{.10\textheight}\normalfont}
{\fillright
\enspace PARTIE~\thepart\enspace}
{8pt}
{\huge\bfseries\filcenter\textsc}
\titlespacing{\part}{0pt}{*0}{*5}
\renewcommand\thepart{\arabic{part}}
\begin{document}
\part{Here is a part}
\lipsum
\shorttableofcontents{Sommaire}{1}
\part*{Introduction}
\addcontentsline{toc}{chapter}{Introduction}
\markboth{Introduction}{Introduction}
\lipsum
\nocite{*}
\printbibliography
\addcontentsline{toc}{chapter}{Bibliographie}
\tableofcontents
\end{document}
答案1
这个问题最简单的解决方法是复制\titleformat{part}
和说\titleformat{chapter}
并进行适当的更改。这就足够了,因为\tableofcontents
和\shorttableofcontents
使用\chapter*{}
命令来写\contentsname
标题。
但是,这也会为通常的样式设置样式\chapter
。
代码
\documentclass[11pt,a4paper,oneside,openright]{book}
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\usepackage{lipsum}% Pour générer du faux texte}
\usepackage{shorttoc}% Gestion du sommaire
\usepackage{titlesec}
\usepackage[french]{babel}% Pour un document en français
\usepackage{biblatex} % Most probably for \printbibliography
% --------------------------------------------------
% Paramétrage des parties
% --------------------------------------------------
\titleclass{\part}{top}
\titleformat{\part}[frame]
{\null\vspace{.10\textheight}\normalfont}
{\filright
\enspace PARTIE~\thepart\enspace}
{8pt}
{\huge\bfseries\filcenter\textsc}
\titleclass{\chapter}{top}
\titleformat{\chapter}[frame]
{\null\vspace{.10\textheight}\normalfont}
{\filright
\enspace Chapitre~\thechapter\enspace}
{8pt}
{\huge\bfseries\filcenter\textsc}
\titlespacing{\part}{0pt}{*0}{*5}
\renewcommand\thepart{\arabic{part}}
\begin{document}
\part{Here is a part}
\lipsum
\shorttableofcontents{Sommaire}{1}
\part*{Introduction}
\addcontentsline{toc}{chapter}{Introduction}
\markboth{Introduction}{Introduction}
\lipsum
\nocite{*}
\printbibliography
\addcontentsline{toc}{chapter}{Bibliographie}
\tableofcontents
\end{document}
抱歉我对法语不太了解;-)
截图