다음 이미지의 상자 종류를 정확하게 구현하는 패키지나 방법이 있는지 알고 싶습니다.
미리 감사드립니다!
답변1
TeX.SE에 오신 것을 환영합니다!
원하는 레이아웃을 제공하는 스타일 구현
댓글에서 말했듯이 이 상자 스타일은 강력한 tcolorbox
. 이 작업은 두 단계로 수행됩니다.
my box
어디에나 적용할 수 있는 스타일을 정의하고tcolorbox
원하는 디자인을 구현해 보세요.스타일을 사용하는
\newtcolorbox
환경을 정의하는 데 사용됩니다 .mybox
my box
물론, 원한다면 my box
다른 tcolorbox
es에도 스타일을 적용할 수 있습니다. 이것이 두 작업을 분리하는 요점입니다.
\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}
참고: bc-dodecaedre
그래픽은 패키지에서 제공되므로 그래픽( 파일, MetaPost로 얻음) bclogo
을 가지려면 패키지를 설치해야 합니다 ..mps
자동으로 번호가 매겨진 상자
댓글에 대한 귀하의 요청에 따라 이전 섹션에서 개발한 레이아웃을 사용하여 독립적으로 번호가 지정된 일련의 상자를 만드는 여러 가지 방법이 있습니다(스타일 덕분에 재사용이 특히 쉽습니다 my box
). 기본적으로 두 가지 방법이 있습니다.
auto counter
첫 번째 선택적 인수에 사용\newtcolorbox
(아래 예에 정의된 두 개의 상자 시리즈 참조: A 유형의 상자와 B 유형의 상자);theorems
라이브러리를 사용합니다 ( 예제에 정의된 환경tcolorbox
참조 ).theorem
\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}
페이지 1:
2페이지 상단:
답변2
포인트 번호 1에 대한 답변은 다음과 같습니다 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}
그리고 포인트 번호 2에 관해서, 즉 wavy vertical rule
아직 완성되지 않은 텍스트의 경우 일부 전문가가 답변을 줄 수도 있고 그동안 저도 노력 중입니다...