titlesec 的换行问题

titlesec 的换行问题

我正在尝试使用 将文章中的章节标题格式化为大号、居中和下划线titlesec。我的一些章节标题很长,所以我需要将它们分成多行。但是,在章节标题中添加换行符命令时总是出错,titlesec似乎阻止了自动换行。有办法解决这个问题吗?

提前致谢!

最小示例:

\documentclass[a4paper, 11pt]{article}

\usepackage[explicit]{titlesec}   
\titleformat{\section}{\Large\centering}{}{0em}{\underline{\smash{#1}}}

\begin{document}
\section{Very Long \\ Title}
Text text text
\end{document}

答案1

的参数\underline不能跨行。你可以这样做ulem

\documentclass[a4paper, 11pt]{article}

\usepackage[normalem]{ulem}
\usepackage{titlesec}
\titleformat{\section}{\Large\centering}{}{0em}{\uline}

\begin{document}
\section{Very Long very long very long very \\ long very long very long Title}
Text text text
\end{document}

在此处输入图片描述

答案2

我使用soul软件包解决了这个问题。它的效果与 egreg 的答案一样好,但允许我将下划线置于标准高度以上。

\documentclass[a4paper, 11pt]{article}

\usepackage{soul}
\setul{1.5 pt}{.6 pt}

\usepackage[explicit]{titlesec}
\titleformat{\section}{\Large\centering}{}{0em}{\ul{#1}}

\begin{document}

\section{Very Long very long very long very long very long very long section Title}
Text text text

\end{document}

相关内容