Titlerule 和 Wrapfig 交互

Titlerule 和 Wrapfig 交互

大家好,我需要一些帮助!我想让我的节标题下面有一个 titlerule,但是 titlerule 与 wrapfig 配合得不太好。

我使用wrapfigtcolorbox制作侧边栏,并titlesec在节标题下方添加规则。文本本身可以很好地环绕侧边栏,但 却\titlerule直接穿过侧边栏!

这是我的 MWE:

Preamble
\documentclass[9pt]{extbook}
\usepackage[paperwidth=6in, paperheight=9in, inner=0.75in, outer=0.75in, tmargin=0.5in, marginparwidth=0.6in]{geometry}
\usepackage{wrapfig}                    %Part of sidebars
\usepackage{tcolorbox}                  %Other part of sidebars
\usepackage{titlesec}                   %Change chap/sec/ssec layout
\usepackage{blindtext}                  %MWE text

\titleformat{\section}{\normalfont\Large\bfseries\uppercase}{}{0em}{}[\titlerule]

\newenvironment{Sidebar}
   {\wrapfigure{r}{0.43\textwidth}\vspace{-3em}\tcolorbox[colframe=black!50!white]\footnotesize}
   {\endtcolorbox\vspace{2em}\endwrapfigure}

\begin{document}
\chapter{Look, a Chapter!}
\blindtext

\begin{Sidebar}
{\centering\bfseries Title \\[0.5em]}
\blindtext[1]
\end{Sidebar}
\section{Now a section!}
\blindtext[2]
\end{document}

如您所见,标题规则并没有在文本停止的地方停止。如果您能提供任何见解,我们将不胜感激!

MWE图像

答案1

这里有一个简单的解决方案:在前面添加一个空框\titlerule,并添加一个负垂直跳过来弥补由此增加的垂直空间:

\documentclass[9pt]{extbook}

\usepackage[paperwidth=6in, paperheight=9in, inner=0.75in, outer=0.75in, tmargin=0.5in, marginparwidth=0.6in]{geometry}
\usepackage{wrapfig} %Part of sidebars
\usepackage{tcolorbox} %Other part of sidebars
\usepackage{titlesec} %Change chap/sec/ssec layout
\usepackage{blindtext} %MWE text

\titleformat{\section}{\normalfont\Large\bfseries\uppercase}{}{0em}{}[\vskip-1.5ex\mbox{}{}\titlerule]

\newenvironment{Sidebar}
   {\wrapfigure{r}{0.43\textwidth}\vspace{-3em}\tcolorbox[colframe=black!50!white]\footnotesize}
   {\endtcolorbox\vspace{2em}\endwrapfigure}

\begin{document}
\chapter{Look, a Chapter!}
\blindtext

\begin{Sidebar}
{\centering\bfseries Title \\[0.5em]}
\blindtext[1]
\end{Sidebar}

\setlength\linewidth{0.57\textwidth}

\section{Now a section!}
\setlength\rightskip{0pt}
\blindtext[2]

\end{document} 

在此处输入图片描述

相关内容