当我将parbox
选项 atcolorbox
设置为 时false
,每个部分(甚至第一个部分)前面都会有额外的空格。有没有办法告诉以与页面上第一个相同的方式tcolorbox
处理第一个section
( ,...) ,即没有额外的空格?也就是说,无论选项如何,以下两个框看起来都应该相同。subsection
section
parbox
\documentclass{article}
\usepackage[many]{tcolorbox}
\begin{document}
\begin{tcolorbox}[parbox=false]
\section{Test}
\end{tcolorbox}
\begin{tcolorbox}
\section{Test}
\end{tcolorbox}
\end{document}
答案1
\noindent
如果从中删除和\leavevmode
(由 tcolorbox 插入),它就会按您想要的方式工作\@parboxrestore
。但我不明白为什么 tcolorbox 在框开始时如此努力地切换到水平模式,我不知道这是否会产生不良的副作用:
\documentclass[]{article}
\usepackage[many]{tcolorbox}
\tcbuselibrary{breakable}
\makeatletter
\def\tcb@parbox@use@false{%
\def\@parboxrestore{\linewidth\hsize\let\@parboxrestore=\tcb@parboxrestore}%
}
\makeatother
\begin{document}
\begin{tcolorbox}[parbox=false]
\section{Test}
abc\par cde
\end{tcolorbox}
\begin{tcolorbox}
\section{Test}
abc\par cde
\end{tcolorbox}
\end{document}