目录中没有连字符(带有 titletoc)

目录中没有连字符(带有 titletoc)

我正在尝试关闭目录中的连字符。以下是我的titletoc设置的最小工作示例:

\documentclass[a5paper]{article}
\usepackage[italian]{babel}
\usepackage{titletoc}

\contentsmargin{4em}
\titlecontents{section}
   [15mm] % ie, 1.5em (chapter) + 2.3em
   {}
   {\hspace*{-5mm}\parbox[t][]{5mm}{\textbf{\thecontentslabel.}}}
   {\hspace*{-5mm}\parbox[t][]{5mm}{\textcolor{gray}{$\blacksquare$}}}
   {\titlerule*[1pc]{ }{\sffamily\bfseries\contentspage}}

\begin{document}

\tableofcontents

\section{Eterogeneità dei rischi, assicurazione e soluzioni di mercato}

\end{document}

我得到的结果就是我想要的,除了目录中的连字符(“Indice”)。

在此处输入图片描述

我尝试了许多解决方案来摆脱连字符,例如在 的参数末尾的 and中添加\hyphenpenalty 1000or ,但唯一的结果是弄乱对齐。\raggedright<above-code><numbered-entry-format>\titlecontents

答案1

添加\filright适当的参数。我还建议对节号使用零宽度框。

\documentclass[a5paper]{article}
\usepackage[T1]{fontenc}
\usepackage[italian]{babel}
\usepackage{titletoc}

\contentsmargin{3em}
\titlecontents{section}
   [15mm] % ie, 1.5em (chapter) + 2.3em
   {\filright}
   {\makebox[0pt][r]{\bfseries\thecontentslabel.\@ }}
   {\makebox[0pt][r]{\textcolor{gray}{$\blacksquare$ }}}
   {\titlerule*[1pc]{ }{\sffamily\bfseries\contentspage}}

\begin{document}

\tableofcontents

\section{Eterogeneità dei rischi, assicurazione e soluzioni di mercato}

\setcounter{section}{9}

\section{Eterogeneità dei rischi, assicurazione e soluzioni di mercato}

\end{document}

在此处输入图片描述

为了避免章节标题中使用连字符,请使用\titleformatfrom进行修改titlesec

相关内容