So erstellen Sie ein Warnfeld mit Tcolorbox

So erstellen Sie ein Warnfeld mit Tcolorbox

Ich habe versucht, das Ausrufezeichen auszurichten, konnte es aber weder vertikal noch horizontal zentrieren. Mein Ziel ist es, es so aussehen zu lassen wie dieses Bild. Bildbeschreibung hier eingeben

\documentclass{article}
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\usepackage[most]{tcolorbox}
\usepackage[x11names,table]{xcolor}
%-------------------------
\definecolor{orang}{RGB}{255,155,0}

\newtcolorbox[auto counter,number within=section]{caja}[1][]{
  enhanced jigsaw,colback=white,colframe=orang,coltitle=orang,
  fonttitle=\bfseries\sffamily,
  sharp corners,
  detach title,
  leftrule=22mm,
  underlay unbroken and first={\node[below,text=white,font=\sffamily\bfseries,align=center]
    at ([xshift=-11mm,yshift=-1mm]interior.north west) {\Huge \centering  \textbf{!}};},
  breakable,pad at break=1mm,
  #1,
  code={\ifdefempty{\tcbtitletext}{}{\tcbset{before upper={\tcbtitle\par\medskip}}}},
}
%----------------------
\begin{document}
\section{example}

\begin{caja}[title=warning]
The vertical alignment settings are only relevant for boxes which are larger than their
natural height, see Section 4.10 on page 53.
\end{caja}
\end{document}

Wie Sie vielleicht bemerkt haben,Box hat einen Titelund scheint einen Einfluss auf die Ausrichtung zu haben

Antwort1

Durch Anpassen der Ankerpunkte, Verwenden anchor=eastund Entfernen \centeringsowie erneutes Verwenden [xshift=-22.5pt]wird das gewünschte Ergebnis erzielt.

Ausgabe

\documentclass{article}
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\usepackage[most]{tcolorbox}
%-------------------------
\definecolor{orang}{RGB}{255,155,0}

\newtcolorbox[auto counter,number within=section]{caja}[1][]{
  enhanced jigsaw,colback=white,colframe=orang,coltitle=orang,
  fonttitle=\bfseries\sffamily,
  sharp corners,
  detach title,
  leftrule=22mm,
  % What you need %%%%%%%%%%%%
  underlay unbroken and first={\node[below,text=black,anchor=east]
  at ([xshift=-22.5pt]interior.base west) {\Huge  \textbf{!}};},
  %%%%%%%%%%%%%%%%%%%%%%%%
  breakable,pad at break=1mm,
  #1,
  code={\ifdefempty{\tcbtitletext}{}{\tcbset{before upper={\tcbtitle\par\medskip}}}},
}
%----------------------
\begin{document}
\section{example}

\begin{caja}[title=warning]
One-line text.
\end{caja}

\begin{caja}[title=warning]
The vertical alignment settings are only relevant for boxes which are larger than their natural height, see Section 4.10 on page 53.
\end{caja}

\begin{caja}[title=warning]
The vertical alignment settings are only relevant for boxes which are larger than their natural height, see Section 4.10 on page 53. The vertical alignment settings are only relevant for boxes which are larger than their natural height, see Section 4.10 on page 53. The vertical alignment settings are only relevant for boxes which are larger than their natural height, see Section 4.10 on page 53. 
\end{caja}
\end{document}

verwandte Informationen