我正在尝试创建目录,并使用 Devanagari 字体。我将字体声明为 Shobhika Regular,但在目录环境中,它会变为粗体。如何防止这种情况发生。我的代码是
\documentclass[letterpaper,12pt]{book}
\usepackage{fancyhdr}
\usepackage{footnpag}
\usepackage{longtable}
\usepackage{fontspec}
\usepackage{polyglossia}
\usepackage[larger]{skt}
\usepackage{setspace}
\usepackage[total={6.5in,8.75in},top=1.2in,left=1.1in]{geometry}
\pagestyle{fancy}
\setlength{\parindent}{0pt}
\setlength{\LTleft}{0pt}
\renewcommand{\headrulewidth}{1.5pt}
\renewcommand{\footrulewidth}{1.5pt}
\newcommand{\san}[1][1.35]{
\catcode`\^=12
\catcode`\~=12
\fontspec[WordSpace=0.75,Script=Devanagari,Mapping=sk-dvn,Scale=#1]{Shobhika Regular}}
\begin{document}
\thispagestyle{empty}
\label{ds_contents}
\centerline{\san vi.sayasuucii}
\contentsline{chapter}%
{\numberline{\bf 1}{\hspace{3mm}%
{\san namaste}}%
\hspace{3mm}\dotfill ~~~}%
{\pageref{namaste}}
{\san namaste}
\end{document}
正如您所见,当目录环境中的 namaste 具有正确的字体时,它会显示为粗体。
答案1
这里缺少的是\contentsline{chapter}
调用一个宏,\l@chapter
它设置目录的章节样式条目。此宏还包括一些格式,默认情况下使用大胆的章节标题。您可以使用tocloft
调整格式:
\documentclass{book}
\usepackage{tocloft}
\renewcommand{\cftchappresnum}{\bfseries}
\renewcommand{\cftchapfont}{\normalfont}
\renewcommand{\cftchapleader}{\cftdotfill{\cftdotsep}}
\begin{document}
\pagestyle{empty}
\begin{center}
\bfseries Contents
\end{center}
\contentsline{chapter}%
{\numberline{1}Greetings}%
{1}
Greetings
\end{document}
您可以通过调整 来调整引导点的间距\cftdotsep
。例如,如果您希望点之间的距离更近,请使用\renewcommand{\cftdotsep}{3}
(默认为4.5
)。