使用 tcolorbox 修復漂亮框架的一些問題

使用 tcolorbox 修復漂亮框架的一些問題

在我的書中,我使用這段程式碼(我有 4 個具有類似方面的程式碼)來放置重要的定義、註釋和其他內容。這是我的 MWE:

\documentclass{article}
\usepackage[most]{tcolorbox}
\newtcolorbox{mybox}[1]{colback=teal!10,coltitle=black,colframe=teal!30,fonttitle=\bfseries,title=#1, arc=0mm}
\usepackage{lipsum}

\begin{document}

\begin{mybox}{An example}
\lipsum[1]
\end{mybox}

\end{document}

輸出是:

在此輸入影像描述

我想使用包包pifont來放置一個通用符號,如下圖所示:

在此輸入影像描述

我的問題是:

  1. 為什麼我寫了會有圓角arc=0mm?我想要一個邊緣而不是圓形邊緣;
  2. 我希望厚度根本不存在或減少到很小的線;
  3. 如何從pifont包裝中以動態位置插入所需的符號(如第二張圖所示),也就是說,您可以將其向下或向上移動。

答案1

  1. arc=0pt。此選項修復角的內半徑,同時outer arc保持不變。使用sharp corners選項獲得內尖角和外尖角。
  2. rules。 Tcolorbox 圍繞框定義了 5 個規則:toprule、bottomrule、leftrule、rightrule 和 titlerule(標題和上部之間的這一規則)。您可以獨立於其他人修復每個問題,也可以使用 一起修復所有問題boxrule。為了抑制所有這些使用boxrule=0pt
  3. 疊加符號。您可以使用overlay選項透過TikZ命令添加任何符號或圖形。將框聲明為enhanced允許TikZ命令很方便。

全部一起:

\documentclass{article}
\usepackage[most]{tcolorbox}
\usepackage{pifont}

\newtcolorbox{mybox}[1]{%
    colback=teal!10,
    coltitle=black,
    colframe=teal!30,
    fonttitle=\bfseries,
    title=#1, 
    sharp corners,
    boxrule=0pt,
    enhanced,
    overlay={\node[font=\Huge, text=cyan!70!black] at ([yshift=-4mm]interior.north west) {\ding{228}};}
    }

\usepackage{lipsum}

\begin{document}

\begin{mybox}{An example}
\lipsum[1]
\end{mybox}

\end{document}

在此輸入影像描述

答案2

只回答第一個問題,因為一個貼文提出多個問題不好:

其他角的半徑由 定義outer arc,而不是arc

\documentclass{article}
\usepackage[most]{tcolorbox}
\newtcolorbox{mybox} [1]{
                colback=teal!10,
                coltitle=black,
                colframe=teal!30,
                fonttitle=\bfseries,
                title=#1, 
                arc=0mm, 
                outer arc=0mm
              }
\usepackage{lipsum}

\begin{document}

\begin{mybox}{An example}
\lipsum[1]
\end{mybox}

\end{document}

在此輸入影像描述

相關內容