在希伯来语文档中,这似乎\titlecontents{chapter}...
不会对目录中章节的显示方式进行任何格式更改。但对于章节和小节,它工作正常。
章节应以大斜体打印,并且章节名称应位于章节编号之前。
知道原因是什么以及怎样解决吗?
% !TEX TS-program = xelatex
\documentclass{book}
\usepackage[showframe]{geometry}
\usepackage{titletoc}
\titlecontents{chapter}
[0pt]
{\Large\itshape}
{\chaptername\ \thecontentslabel:\ }
{}
{\hfill\contentspage}
[]
\usepackage{polyglossia}
\setdefaultlanguage{hebrew}
\setotherlanguage{english}
\newfontfamily\englishfont{Times New Roman}[Script=Latin]
\newfontfamily\hebrewfont{Arial}[Script=Hebrew]
\begin{document}
\tableofcontents
\chapter{אלגברה}
\section*{הקדמה}\addcontentsline{toc}{section}{הקדמה}
\section{א}
\section{ב}
\section{ג}
\section{ד}
\chapter{גיאומטריה}
\section{א}
\section{ב}
\section{ג}
\section{ד}
\section{ה}
\end{document}
答案1
polyglossia
bidi
当文档中使用希伯来语时,加载一个调用的包。bidi
重新定义宏\l@chapter
,以便中的章节条目toc
能够适合 RTL 文档。
因此,您只需在加载\titlecontents
后使用即可:bidi
% !TEX TS-program = xelatex
\documentclass{book}
\usepackage[showframe]{geometry}
\usepackage{titletoc}
\usepackage{polyglossia}
\setdefaultlanguage{hebrew}
\setotherlanguage{english}
\newfontfamily\englishfont{Times New Roman}[Script=Latin]
\newfontfamily\hebrewfont{Arial}[Script=Hebrew]
\titlecontents{chapter}
[0pt]
{\Large\itshape}
{\chaptername\ \thecontentslabel:\ }
{}
{\hfill\contentspage}
[]
\begin{document}
\tableofcontents
\chapter{אלגברה}
\section*{הקדמה}\addcontentsline{toc}{section}{הקדמה}
\section{א}
\section{ב}
\section{ג}
\section{ד}
\chapter{גיאומטריה}
\section{א}
\section{ב}
\section{ג}
\section{ד}
\section{ה}
\end{document}