我想通过在页边空白处添加一条宽线来标记文档的某些部分,理想的方式如下:
preceeding text
\begin{sideLine}
Text
\begin{float}
\end{float}
more text
\end{sideLine}
我尝试过tcolorbox
,但它不能很好地与浮动配合使用。如果我尝试将其打包在浮动内,线条中就会出现间隙。我不太喜欢在图形旁边有一条线的想法,但我不喜欢因中断和继续环境而导致的间隙,以避免丢失浮动。我如何摆脱间隙,有没有办法让环境接受浮动?(我想我可以用 from 限制它们\floatBarrier
放置placeins
在文档内的环境框架内)。
梅威瑟:
\documentclass{article}
\usepackage[demo]{graphics}
\usepackage[most]{tcolorbox}
\usepackage{caption}
\usepackage{floatrow}
\newtcolorbox{highlightTheoretical}[1][]{blanker, breakable,
left=0pt,
right=0pt, top=1mm, bottom=1mm,
if odd page or oneside*={borderline west={3pt}{-25pt}{black}}{borderline east={3pt}{-25pt}{black}},
before upper=\indent, parbox=false, #1}
\begin{document}
\begin{highlightTheoretical}
lipsum
\end{highlightTheoretical}
\begin{figure}
\begin{highlightTheoretical}
\ffigbox{
\includegraphics[width=.5\linewidth]{imagefile}
\caption{test}}{}
\end{highlightTheoretical}
\end{figure}
\begin{highlightTheoretical}
lipsum
\end{highlightTheoretical}
\end{document}
附言:我确实使用了 floatrow 并且打算保留它,虽然现在没有什么区别,但当\ffigbox
省略它时,它不会在标题旁边生成一行,并且可能会有进一步的复杂情况。
答案1
正如Fran
评论所说,floats
这是特殊环境,你必须小心处理它们。但你仍然可以在capt-of
或ccaption
包中包含带标题的非浮动图形。这些图形将位于tcolorbox
你放置它们的位置内,并且边线将沿着整个集合连续。以下是带有capt-of
包的示例:
\documentclass{article}
\usepackage[demo]{graphics}
\usepackage[most]{tcolorbox}
\usepackage{capt-of}
\newtcolorbox{highlightTheoretical}[1][]{blanker, breakable,
left=0pt,
right=0pt, top=1mm, bottom=1mm,
if odd page or oneside*={borderline west={3pt}{-25pt}{black}}{borderline east={3pt}{-25pt}{black}},
before upper=\indent, parbox=false, #1}
\begin{document}
\begin{highlightTheoretical}
lipsum
{\par\centering
\includegraphics[width=.5\linewidth]{imagefile}
\captionof{figure}{test}
\par
}
lipsum
\end{highlightTheoretical}
\end{document}