Tcolorbox: 字幕の背景色

Tcolorbox: 字幕の背景色

背景色の変化を修正するにはどうすればいいでしょうか? MWE:

\documentclass[a4paper]{article}
\usepackage[scale=.85]{geometry}
\usepackage{tcolorbox,enumitem}
\tcbuselibrary{skins,xparse}

\begin{document}
\noindent

\begin{tcolorbox}[skin=bicolor,title=Main Title,
    colframe=red!75!black,colback=blue!10!white,colbacklower=green!10,width=0.5\linewidth,height=0.5\linewidth]
    The upper part. \par ~~~\par ~~~\par ~~~\par ~~~\par ~~~\par ~~~\par ~~~\par ~~~\par ~~~
\tcblower
\tcbsubtitle[before skip=\baselineskip]%
      {My subtitle}
    The lower part.
  \end{tcolorbox}


\end{document}

結果は次のようになります。

ここに画像の説明を入力してください

ありがとう、ハラルド

答え1

これは本当に奇妙で、おそらくバグです。以下のコードのハックにより、問題は次のように修正されます。

ここに画像の説明を入力してください

しかし、何が起こっているのかわかりません。 はbefore skip=...これを処理するはずですが、スキップ量を調整するだけでは問題は解決しません。同様に、 コマンドのみを使用してこれを行うことは可能であるはずですが、これも機能しませんでした。と の\vskip両方を使用することでのみ、問題を解決できました。これがハックです。\vskipbefore skip

\documentclass[a4paper]{article}
\usepackage[scale=.85]{geometry}
\usepackage{tcolorbox,enumitem}
\tcbuselibrary{skins,xparse}

\begin{document}
\noindent

\begin{tcolorbox}[skin=bicolor,title=Main Title,
    colframe=red!75!black,colback=blue!10!white,colbacklower=green!10,
    width=0.5\linewidth,
    height=0.5\linewidth]
    The upper part. \par ~~~\par ~~~\par ~~~\par 
    ~~~\par ~~~\par ~~~\par ~~~\par ~~~\par ~~~
\tcblower\vskip-\baselineskip
\tcbsubtitle[before skip=-\baselineskip]{My subtitle}
    The lower part.
  \end{tcolorbox}

\end{document}

字幕が少し高すぎる\vskipと思うので量を調整する必要があるかもしれませんが、これを使用すると、ランダムな距離を選択するよりも見た目が美しくなります。-\baselineskip

答え2

意図的に、分離線とボックス下部の内容の間にはある程度の距離があります。draftオプションを追加すると、何が起こるかが理解しやすくなります。

\documentclass[a4paper]{article}
\usepackage[scale=.85]{geometry}
\usepackage{tcolorbox}
\tcbuselibrary{skins,xparse}

\begin{document}

\begin{tcolorbox}[skin=bicolor,draft,title=Main Title,
    colframe=red!75!black,colback=blue!10!white,colbacklower=green!10,width=0.5\linewidth,height=0.5\linewidth]
    The upper part. \par ~~~\par ~~~\par ~~~\par ~~~\par ~~~\par ~~~\par ~~~\par ~~~\par ~~~
\tcblower
\tcbsubtitle[]%
      {My subtitle}
    The lower part.
\end{tcolorbox}

\end{document}

ここに画像の説明を入力してください

bicolor分離線と下部の内容物との間の距離は、middle(デフォルト: 2mm) プラスboxsep(デフォルト: 1mm) です。これらの距離は白とピンク色で表示されます。

字幕は下部の始まりから始まります (字幕の上部に破線が表示されます)。

字幕を分離線まで上方に移動するには、enlarge top initially by字幕の境界ボックスを変更するために を使用することができます。これは、字幕の高さが修正された距離よりも大きい限り機能します。実際には、2 つの線が一致するときに視覚的な不具合を回避するために、少し距離を追加します。たとえば、3.1mmデフォルト値を使用します。

\documentclass[a4paper]{article}
\usepackage[scale=.85]{geometry}
\usepackage{tcolorbox}
\tcbuselibrary{skins,xparse}

\begin{document}

\begin{tcolorbox}[skin=bicolor,title=Main Title,
    colframe=red!75!black,colback=blue!10!white,colbacklower=green!10,width=0.5\linewidth,height=0.5\linewidth]
    The upper part. \par ~~~\par ~~~\par ~~~\par ~~~\par ~~~\par ~~~\par ~~~\par ~~~\par ~~~
\tcblower
\tcbsubtitle[enlarge top initially by=-3.1mm]% -(middle+boxsep+tinydelta)
      {My subtitle}
    The lower part.
\end{tcolorbox}


\end{document}

これは与える:

ここに画像の説明を入力してください

関連情報