Me gustaría saber si existe algún paquete o método para lograr exactamente el tipo de caja de la siguiente imagen.
Gracias de antemano !
Respuesta1
¡Bienvenido a TeX.SE!
Implementar un estilo que dé el diseño deseado.
Como se dijo en los comentarios, este estilo de caja se puede obtener con el potente tcolorbox
. Hago esto en dos pasos:
Defina un
my box
estilo que se pueda aplicar a cualquieratcolorbox
e implemente el diseño que desee.Úselo
\newtcolorbox
para definir un entorno llamadomybox
que usa elmy box
estilo.
Por supuesto, puedes aplicar el my box
estilo a otros tcolorbox
es si lo deseas; ese es el objetivo de separar las dos operaciones.
\documentclass{article}
\usepackage{xcolor}
\usepackage{graphicx}
\usepackage{tcolorbox}
\tcbuselibrary{skins}
\usepackage{lipsum}
\definecolor{boxTitle}{HTML}{fff79a}
\definecolor{boxBackground}{HTML}{fffce0}
\definecolor{boxFrame}{HTML}{f1e2b8}
\tcbset{my box/.style={
enhanced, fonttitle=\bfseries,
colback=boxBackground, colframe=boxFrame,
coltitle=black, colbacktitle=boxTitle,
attach boxed title to top left={xshift=0.3cm,
yshift*=-\tcboxedtitleheight/2},
boxed title style={
before upper=\hspace*{0.5cm}, % reserve space for the image
overlay={
\node at ([xshift=0.5cm]frame.west)
{\includegraphics[scale=0.65]{bc-dodecaedre}};
}
}
}
}
\newtcolorbox{mybox}[1][]{my box, #1}
\begin{document}
\begin{mybox}[title={This is a great title, with a comma}]
\lipsum[1]
\end{mybox}
\end{document}
Nota: los bc-dodecaedre
gráficos vienen del bclogo
paquete, por lo que debes tenerlo instalado para poder tener los gráficos ( .mps
archivo, obtenido con MetaPost).
Cajas numeradas automáticamente
Siguiendo su solicitud en un comentario, aquí hay varias formas de crear series de cajas numeradas de forma independiente usando el diseño que desarrollamos en la sección anterior (reutilizarlo es particularmente fácil gracias al my box
estilo). Existen básicamente dos formas:
usando
auto counter
en el primer argumento opcional de\newtcolorbox
(ver las dos series de cuadros definidas en el siguiente ejemplo: cuadros de tipo A y cuadros de tipo B);utilizando la
theorems
biblioteca detcolorbox
(consulte eltheorem
entorno definido en el ejemplo).
\documentclass{article}
\usepackage{xcolor}
\usepackage{graphicx}
\usepackage{tcolorbox}
\tcbuselibrary{skins, theorems}
\usepackage{nameref} % only needed if you use \nameref
\definecolor{boxTitle}{HTML}{fff79a}
\definecolor{boxBackground}{HTML}{fffce0}
\definecolor{boxFrame}{HTML}{f1e2b8}
\tcbset{my box/.style={
enhanced, fonttitle=\bfseries,
colback=boxBackground, colframe=boxFrame,
coltitle=black, colbacktitle=boxTitle,
attach boxed title to top left={xshift=0.3cm,
yshift*=-\tcboxedtitleheight/2},
boxed title style={
before upper=\hspace*{0.5cm}, % reserve space for the image
overlay={
\node at ([xshift=0.5cm]frame.west)
{\includegraphics[scale=0.65]{bc-dodecaedre}};
}
}
}
}
\newtcolorbox[auto counter]{countedboxa}[2][]{%
my box, title={Counted box of type A~(\thetcbcounter): #2}, #1}
\newtcolorbox[auto counter, number within=section]{countedboxb}[2][]{%
my box, title={Counted box of type B.~(\thetcbcounter): #2}, #1}
\newtcbtheorem[number within=section]{theorem}{Theorem}{my box}{th}
\begin{document}
\section{First section}
\label{sec:first}
\begin{countedboxa}[label={first box of type A}]{Some title}
My number is~\thetcbcounter.
\end{countedboxa}
\begin{countedboxb}[label={first box of type B}]{Other title}
Note the different numbering style due to our use of
\verb|number within=section| for boxes of type~B. My number is~\thetcbcounter.
\end{countedboxb}
\begin{countedboxa}[label={second box of type A}]{Another title}
My number is~\thetcbcounter. The third box of type A is number~\ref{third
box of type A} on page~\pageref{third box of type A}.
\end{countedboxa}
\begin{countedboxb}[label={second box of type B}]{The title}
My number is~\thetcbcounter. The third box of type B is number~\ref{third
box of type B} on page~\pageref{third box of type B}.
\end{countedboxb}
\begin{theorem}{Compacity of Foo spaces}{foo}
% Text (mostly) from the tcolorbox manual
This is the text of the theorem. The counter is automatically assigned and,
in this example, prefixed with the section number due to our use of
\verb|number within=section|. This theorem is numbered \ref{th:foo}, found
on page~\pageref{th:foo} and titled ``\nameref{th:foo}.''
\end{theorem}
An immediate but very convenient consequence of this result is
theorem~\ref{th:bar}.
\begin{theorem}{Bar}{bar}
Trivial consequence of theorem~\ref{th:foo}.
\end{theorem}
\section{Second section}
\begin{countedboxa}[label={third box of type A}]{Some title}
See boxes~\ref{first box of type A} and \ref{second box of type A} in
section~\ref{sec:first}.
\end{countedboxa}
\begin{countedboxb}[label={third box of type B}]{Title of the box}
See boxes~\ref{first box of type B} and \ref{second box of type B} in
section~\ref{sec:first}.
\end{countedboxb}
\begin{theorem}{Quux}{quux}
This is a very important result.
\end{theorem}
\end{document}
Página 1:
Parte superior de la página 2:
Respuesta2
Aquí está la respuesta a su punto número 1, es decir shaded box with round corner
:
\documentclass{book}
\usepackage[tikz]{mdframed}
\tikzset{titregris/.style =
{draw=black, thick, fill=yellow, %
text=black, rectangle, rounded corners, right,minimum height=.7cm}}
\makeatletter
\newcounter{theo}[section]
\newenvironment{theo}[1][]{%
\stepcounter{theo}%
\ifstrempty{#1}%
{\mdfsetup{%
frametitle={%
\tikz[baseline=(current bounding box.east),outer sep=0pt,linecolor=black]
\node[titregris,anchor=east,rectangle,fill=yellow!20]
{\strut Theorem~\thetheo};}}
}%
{\mdfsetup{%
frametitle={%
\tikz[baseline=(current bounding box.east),outer sep=0pt]
\node[titregris,anchor=east,rectangle,fill=yellow!20]
{\strut Theorem~\thetheo:~#1};}}%
}%
\mdfsetup{innertopmargin=10pt,linecolor=yellow,roundcorner=5pt,backgroundcolor=yellow!10,%
linewidth=2pt,topline=true,
frametitleaboveskip=\dimexpr-\ht\strutbox\relax,}
\begin{mdframed}[]\relax%
}{\end{mdframed}}
\makeatother
\begin{document}
\begin{theo}[Inhomogeneous Linear]
This is my own box with a mandatory title
and options.
This is my own box with a mandatory title
and options following para.
\end{theo}
\end{document}
Y respecto al punto número 2, es decir, wavy vertical rule
para el texto, aún no completado, puede que algunos expertos den respuesta, mientras tanto yo también lo intento...