如何在 tcolorbox 內添加等高的框架字幕

如何在 tcolorbox 內添加等高的框架字幕

我用來tcolorbox做兩列,然後itemize在裡面。一切工作正常,但是當我使用命令添加字幕時,tcbsubtitle幀不相等,它會根據單字的高度進行調整。這是我的程式碼:

\documentclass[12pt]{article}
\usepackage[most]{tcolorbox}
\usepackage{enumitem}
\usepackage{lipsum}
\usepackage[a4paper,margin=2cm]{geometry}

\begin{document}
\begin{tcolorbox}[text width=\textwidth,sidebyside,sidebyside align=top,title=\centering{Objetivos},subtitle style={boxrule=0.4pt,
colback=gray!50},frame style={fill=white}]
    \tcbsubtitle{De enseñanza}
    \begin{itemize}[noitemsep]
        \item \lipsum[1]
        \item \lipsum[2]
    \end{itemize}
    \tcblower\tcbsubtitle{De aprendizaje}
        \begin{itemize}[noitemsep]
            \item \lipsum[3]
            \item \lipsum[4]
        \end{itemize}
    \end{tcolorbox}
\end{document}

和結果

在此輸入影像描述

如何矯正身高?

先謝謝了

答案1

該問題是由於僅其中一個字幕中存在下行字母所造成的。可以透過使字幕具有相同的總高度(高度+深度)來消除差異。有很多可能的解決方案。例如,您可以\strut在需要時將 a 新增至字幕內容或text height全域調整。由於您似乎僅在本機套用樣式,因此下面的程式碼text height也示範如何在本機上調整樣式。

\documentclass[12pt]{article}
\usepackage[most]{tcolorbox}
\usepackage{enumitem}
\usepackage{lipsum}
\usepackage[a4paper,margin=2cm]{geometry}

\begin{document}
\begin{tcolorbox}[%
    text width=\textwidth,
    sidebyside,
    sidebyside align=top,
    title=\centering{Objetivos},
    subtitle style={%
      boxrule=0.4pt,
      colback=gray!50,
      text height=2ex,
    },
    frame style={%
      fill=white,
    },
  ]
  \tcbsubtitle{De enseñanza}
  \begin{itemize}[noitemsep]
    \item \lipsum[1]
    \item \lipsum[2]
  \end{itemize}
  \tcblower\tcbsubtitle{De aprendizaje}
  \begin{itemize}[noitemsep]
    \item \lipsum[3]
    \item \lipsum[4]
  \end{itemize}
\end{tcolorbox}
\end{document}

由於 Okular-on-X 中的錯誤,圖像被省略。

相關內容