tcolorbox 字幕位置的边距

tcolorbox 字幕位置的边距

我希望字幕的边距与 tcolorbox 标题框的边距相同。

为了设置标题框中的边距,我使用了lefttitle=0mm,但我没有找到与字幕样式相关的任何内容。在 MWE 中,我希望“字幕框”与标题框对齐方式相同。

\documentclass{article}
\usepackage{tcolorbox}
\begin{document}
\begin{tcolorbox}[title=Title Frame,
    lefttitle=0mm,
    %left=0mm, % flushes left everything : subtitle and its contents
    colback=red!5!white,
    colframe=red!75!black,
    fonttitle=\bfseries]
    This is a \textbf{tcolorbox}.
    \tcbsubtitle[before skip=\baselineskip, 
        halign=left, % does not work
        lefttitle=0mm, % does not work either
        ]%
    {Subtitle Frame (margin to be set to 0mm)}
    Further text.
\end{tcolorbox}
\end{document}

以下代码很好地减少了标题框的边距,但没有减少副标题的边距。 MWE 输出

我尝试设置一个没有任何内容(也没有标题)和 2 个字幕的 tcolorbox,但它在第一个字幕前显示了一个空白。

答案1

副标题是主 tcolorbox 内的 tcolorbox,其oversize属性设置为将新的 tcolorbox 扩展到原始框的宽度(参见包装手册在第45页)。然而,显然oversize没有lefttitle考虑到。

一个解决方案是将字幕的左边距设置为 0mm,并将字幕栏向左移动 5mm(4mm 边距和 1mm 盒子间隔),并相应地将右侧栏的尺寸增加 4mm(我希望这也是 5mm,但这太多了,我不知道为什么)。

梅威瑟:

\documentclass{article}
\usepackage{tcolorbox}
\begin{document}
\begin{tcolorbox}[title=Title Frame,
    lefttitle=0mm,
    %left=0mm, % flushes left everything : subtitle and its contents
    colback=red!5!white,
    colframe=red!75!black,
    fonttitle=\bfseries,
    subtitle style={left=0mm,enlarge left by=-5mm,grow to right by=4mm}
    ]
    This is a \textbf{tcolorbox}.
    \tcbsubtitle[before skip=\baselineskip]%
    {Subtitle Frame (margin to be set to 0mm)}
    Further text.
\end{tcolorbox}
\end{document}

结果:

在此处输入图片描述

请注意,设置是使用subtitle style主 tcolorbox 中的键完成的,因此设置将应用于同一框中的所有字幕(如果有多个字幕)。您还可以通过将设置作为选项提供给 来将其应用于单个字幕\tcbsubtitle

相关内容