修复使用 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 定义了框周围的五条规则: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}

在此处输入图片描述

相关内容