summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/tex/latex/tcolorbox/tcolorbox.sty
diff options
context:
space:
mode:
authorKarl Berry <karl@freefriends.org>2015-11-27 22:14:48 +0000
committerKarl Berry <karl@freefriends.org>2015-11-27 22:14:48 +0000
commit4427662beda37c46755590f310ad4cee61d7eccf (patch)
tree3687c7d55e1926d76b433895fe5b3eb2b115e23a /Master/texmf-dist/tex/latex/tcolorbox/tcolorbox.sty
parente030c72cb82752f6348535873fafd292d6b0e2bd (diff)
tcolorbox (27nov15)
git-svn-id: svn://tug.org/texlive/trunk@38959 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/texmf-dist/tex/latex/tcolorbox/tcolorbox.sty')
-rw-r--r--Master/texmf-dist/tex/latex/tcolorbox/tcolorbox.sty156
1 files changed, 93 insertions, 63 deletions
diff --git a/Master/texmf-dist/tex/latex/tcolorbox/tcolorbox.sty b/Master/texmf-dist/tex/latex/tcolorbox/tcolorbox.sty
index ede4f486dc1..7462c504629 100644
--- a/Master/texmf-dist/tex/latex/tcolorbox/tcolorbox.sty
+++ b/Master/texmf-dist/tex/latex/tcolorbox/tcolorbox.sty
@@ -1,8 +1,8 @@
-%% The LaTeX package tcolorbox - version 3.73 (2015/10/16)
+%% The LaTeX package tcolorbox - version 3.80 (2015/11/27)
%% tcolorbox.sty: Text color boxes
%%
%% -------------------------------------------------------------------------------------------
-%% Copyright (c) 2006-2014 by Prof. Dr. Dr. Thomas F. Sturm <thomas dot sturm at unibw dot de>
+%% Copyright (c) 2006-2015 by Prof. Dr. Dr. Thomas F. Sturm <thomas dot sturm at unibw dot de>
%% -------------------------------------------------------------------------------------------
%%
%% This work may be distributed and/or modified under the
@@ -18,8 +18,8 @@
%% This work consists of all files listed in README
%%
\NeedsTeXFormat{LaTeX2e}
-\ProvidesPackage{tcolorbox}[2015/10/16 version 3.73 text color boxes]
-\def\tcb@version{3.73}
+\ProvidesPackage{tcolorbox}[2015/11/27 version 3.80 text color boxes]
+\def\tcb@version{3.80}
\RequirePackage{pgf}[2008/01/15]
\RequirePackage{verbatim}[2003/08/22]
@@ -39,6 +39,7 @@
\newif\iftcb@titlefilled
\newif\iftcb@fixedheight
\newif\iftcb@ignorenobreak
+\newif\iftcb@checkpage
\newbox\tcb@titlebox
\newbox\tcb@upperbox
@@ -47,6 +48,7 @@
\newcounter{tcbbreakpart}
\newcounter{tcblayer}
+\newcount\tcolorbox@number
\def\tcb@warning#1{\PackageWarning{tcolorbox}{#1}}
\def\tcb@error#1#2{\PackageError{tcolorbox}{#1}{#2}}
@@ -116,7 +118,7 @@
\def\tcb@set@embed@tcbox#1{%
\long\def\tcb@embed@tcbox##1{%
- \tcbdimto\tcb@w@upper{\kvtcb@width-\kvtcb@left@rule-\kvtcb@leftupper-\kvtcb@boxsep*2-\kvtcb@rightupper-\kvtcb@right@rule}%
+ \tcbdimto\tcb@w@upper{\kvtcb@width-(\kvtcb@left@rule+\kvtcb@leftupper+(\kvtcb@boxsep)*2+\kvtcb@rightupper+\kvtcb@right@rule)}%
#1}%
}
@@ -201,10 +203,10 @@
circular arc/.style={arc=\tcb@innerwidth/2},
bean arc/.code={%
\iftcb@fixedheight%
- \ifdim\dimexpr\kvtcb@width-\kvtcb@left@rule-\kvtcb@right@rule>\dimexpr\kvtcb@height@fixed-\kvtcb@top@rule@stand-\kvtcb@bottom@rule@stand\relax%
- \def\kvtcb@arc{(\kvtcb@height@fixed-\kvtcb@top@rule@stand-\kvtcb@bottom@rule@stand)/2}%
+ \ifdim\dimexpr\kvtcb@width-(\kvtcb@left@rule+\kvtcb@right@rule)>\dimexpr\kvtcb@height@fixed-(\kvtcb@top@rule@stand+\kvtcb@bottom@rule@stand)\relax%
+ \def\kvtcb@arc{(\kvtcb@height@fixed-(\kvtcb@top@rule@stand+\kvtcb@bottom@rule@stand))/2}%
\else%
- \def\kvtcb@arc{(\kvtcb@width-\kvtcb@left@rule-\kvtcb@right@rule)/2}%
+ \def\kvtcb@arc{(\kvtcb@width-(\kvtcb@left@rule+\kvtcb@right@rule))/2}%
\fi%
\else%
\def\kvtcb@arc{\tcb@innerwidth/2}%
@@ -289,12 +291,13 @@
text height/.code={\tcb@fixedheighttrue\tcb@dim@to\kvtcb@height@fixed{#1}\let\tcb@ch=\tcb@ch@innerfixed\let\tcb@height@adjust\@empty},
add to height/.code={\ifdefined\kvtcb@height@fixed\tcbdimto\kvtcb@height@fixed{\kvtcb@height@fixed+(#1)}\fi},
height plus/.dimstore in=\kvtcb@height@fixed@plus,%
- height from/.style args={#1 to #2}{height={#1},height plus={#2-#1}},%
+ height from/.style args={#1 to #2}{height={#1},height plus={#2-(#1)}},%
height fill/.is choice,%
height fill/false/.code={\let\tcb@height@adjust\@empty},%
square/.style={height=\kvtcb@width},
equal height group/.code={\edef\tcb@ehgid{#1}\let\tcb@ch=\tcb@ch@equalheight},
minimum for equal height group/.code args={#1:#2}{\edef\tcb@ehgid{#1}\tcb@ehgadd{#2}},
+ use height from group/.code={\ifcsundef{tcb@ehg@height@#1}{}{\tcbset{height=\csuse{tcb@ehg@height@#1}}}},
space/.code={\def\tcb@height@fraction{#1}\let\tcb@ch@fixed@both=\tcb@ch@fixed@space},
space to upper/.style={space=1},
space to lower/.style={space=0},
@@ -359,17 +362,17 @@
grow to right by/.code={%
\tcbdimto\kvtcb@width{\kvtcb@width+#1}%
\pgfkeysalso{enlarge right by={-\the\dimexpr#1\relax}}},%
- left skip/.style={grow to left by={-#1}},
- right skip/.style={grow to right by={-#1}},
+ left skip/.style={grow to left by={-\dimexpr#1\relax}},
+ right skip/.style={grow to right by={-\dimexpr#1\relax}},
leftright skip/.style={left skip={#1},right skip={#1}},
toggle enlargement/.is choice,
toggle enlargement/none/.code={\let\tcb@setbb@toggle=\tcb@setbb@toggle@none},
- toggle enlargement/evenpage/.code={\let\tcb@setbb@toggle=\tcb@setbb@toggle@evenpage},
+ toggle enlargement/evenpage/.code={\let\tcb@setbb@toggle=\tcb@setbb@toggle@evenpage\tcbset{check odd page}},
toggle enlargement/forced/.code={\let\tcb@setbb@toggle=\tcb@setbb@toggle@forced},
toggle enlargement/.default=evenpage,
toggle left and right/.is choice,
toggle left and right/none/.code={\let\tcb@lrtoggle=\tcb@lrtoggle@none},
- toggle left and right/evenpage/.code={\let\tcb@lrtoggle=\tcb@lrtoggle@evenpage},
+ toggle left and right/evenpage/.code={\let\tcb@lrtoggle=\tcb@lrtoggle@evenpage\tcbset{check odd page}},
toggle left and right/forced/.code={\let\tcb@lrtoggle=\tcb@lrtoggle@forced},
toggle left and right/.default=evenpage,
graphical environment/.store in=\kvtcb@graphenv,
@@ -458,8 +461,10 @@
after title/.store in=\kvtcb@after@title,%
before upper/.store in=\kvtcb@before@upper,%
after upper/.store in=\kvtcb@after@upper,%
+ after upper*/.style={after upper={\unskip#1}},%
before lower/.store in=\kvtcb@before@lower,%
after lower/.store in=\kvtcb@after@lower,%
+ after lower*/.style={after lower={\unskip#1}},%
center title/.style={halign title=flush center},%
center upper/.style={halign upper=flush center},%
center lower/.style={halign lower=flush center},%
@@ -481,7 +486,7 @@
tikznode upper/.style={before upper={\centering\tcb@shield@externalize\begin{tikzpicture}\node[align=center,inner sep=0pt,outer sep=0pt,#1]\bgroup},after upper={\egroup;\end{tikzpicture}}},%
tikznode lower/.style={before lower={\centering\tcb@shield@externalize\begin{tikzpicture}\node[align=center,inner sep=0pt,outer sep=0pt,#1]\bgroup},after lower={\egroup;\end{tikzpicture}}},%
tikznode/.style={tikznode upper={#1},tikznode lower={#1}},%
- varwidth upper/.style={before upper={\tcbdimto\tcb@w@upper{#1-\kvtcb@left@rule-\kvtcb@right@rule-\kvtcb@boxsep*2-\kvtcb@leftupper-\kvtcb@rightupper}%
+ varwidth upper/.style={before upper={\tcbdimto\tcb@w@upper{#1-(\kvtcb@left@rule+\kvtcb@right@rule+(\kvtcb@boxsep)*2+\kvtcb@leftupper+\kvtcb@rightupper)}%
\begin{varwidth}{\tcb@w@upper}},after upper={\end{varwidth}}},%
varwidth upper/.default=\kvtcb@width,
text fill/.style={before upper={%
@@ -499,22 +504,26 @@
after upper=\endminipage},
oversize/.style={%
width=\the\dimexpr\dimexpr\linewidth+#1+\kvtcb@left@rule+\kvtcb@leftupper+\kvtcb@boxsep*2+\kvtcb@rightupper+\kvtcb@right@rule\relax,%
- enlarge left by=\the\dimexpr-\kvtcb@left@rule-\kvtcb@leftupper-\kvtcb@boxsep-#1/2\relax,%
- enlarge right by=\the\dimexpr-\kvtcb@boxsep-\kvtcb@rightupper-\kvtcb@right@rule-#1/2\relax},%
+ enlarge left by=-\the\dimexpr\kvtcb@left@rule+\kvtcb@leftupper+\kvtcb@boxsep+(#1)/2\relax,%
+ enlarge right by=-\the\dimexpr\kvtcb@boxsep+\kvtcb@rightupper+\kvtcb@right@rule+(#1)/2\relax},%
oversize/.default=0pt,%
+ flush right/.style={enlarge left by=\linewidth-(\kvtcb@width)},
+ flush left/.style={enlarge right by=\linewidth-(\kvtcb@width)},
+ center/.style={enlarge left by=(\linewidth-(\kvtcb@width))/2,enlarge right by=\kvtcb@bbleft},
baseline/.store in=\kvtcb@baseline,%
- tcbox raise/.style={baseline=-#1},%
+ tcbox raise/.style={baseline=-\the\dimexpr#1\relax},%
tcbox raise base/.style={baseline=\tcb@val@raisebase},%
box align/.is choice,%
box align/bottom/.style={baseline=0pt},%
box align/top/.style={baseline=\tcb@height},%
box align/center/.style={baseline=\tcb@height/2},%
box align/base/.style={baseline=\tcb@val@raisebase},%
- shrink tight/.style={boxsep=0mm,top=-\kvtcb@top@rule@stand,bottom=-\kvtcb@bottom@rule@stand,left=-\kvtcb@left@rule,right=-\kvtcb@right@rule},%
- extrude left by/.code={\tcbdimto\kvtcb@leftupper{\kvtcb@leftupper+#1}\tcbdimto\kvtcb@bbleft{\kvtcb@bbleft-#1}\tcbdimto\kvtcb@width{\kvtcb@width+#1}},%
- extrude right by/.code={\tcbdimto\kvtcb@rightupper{\kvtcb@rightupper+#1}\tcbdimto\kvtcb@bbright{\kvtcb@bbright-#1}\tcbdimto\kvtcb@width{\kvtcb@width+#1}},%
- extrude top by/.code={\tcbdimto\kvtcb@top{\kvtcb@top+#1}\tcbdimto\kvtcb@bbtop@stand{\kvtcb@bbtop@stand-#1}},%
- extrude bottom by/.code={\tcbdimto\kvtcb@bottom{\kvtcb@bottom+#1}\tcbdimto\kvtcb@bbbottom@stand{\kvtcb@bbbottom@stand-#1}},%
+ shrink tight/.style={boxsep=0mm,top=-\the\dimexpr\kvtcb@top@rule@stand\relax,bottom=-\the\dimexpr\kvtcb@bottom@rule@stand\relax,%
+ left=-\the\dimexpr\kvtcb@left@rule\relax,right=-\the\dimexpr\kvtcb@right@rule\relax},%
+ extrude left by/.code={\tcbdimto\kvtcb@leftupper{\kvtcb@leftupper+#1}\tcbdimto\kvtcb@bbleft{\kvtcb@bbleft-(#1)}\tcbdimto\kvtcb@width{\kvtcb@width+#1}},%
+ extrude right by/.code={\tcbdimto\kvtcb@rightupper{\kvtcb@rightupper+#1}\tcbdimto\kvtcb@bbright{\kvtcb@bbright-(#1)}\tcbdimto\kvtcb@width{\kvtcb@width+#1}},%
+ extrude top by/.code={\tcbdimto\kvtcb@top{\kvtcb@top+#1}\tcbdimto\kvtcb@bbtop@stand{\kvtcb@bbtop@stand-(#1)}},%
+ extrude bottom by/.code={\tcbdimto\kvtcb@bottom{\kvtcb@bottom+#1}\tcbdimto\kvtcb@bbbottom@stand{\kvtcb@bbbottom@stand-(#1)}},%
extrude by/.style={extrude left by=#1,extrude right by=#1,extrude top by=#1,extrude bottom by=#1},%
sidebyside/.is if=tcb@sidebyside,%
sidebyside align/.is choice,%
@@ -538,14 +547,11 @@
capture/.store in=\kvtcb@capture,%
hbox/.style={capture=hbox},%
minipage/.style={capture=minipage},%
- check odd page/.is choice,
- check odd page/true/.code={\let\tcb@checkoddpage=\checkoddpage%
- \def\tcb@evenoddmode{strict}%
- },
- check odd page/false/.code={\let\tcb@checkoddpage=\relax%
- \def\tcb@evenoddmode{easy}%
- },
- check odd page/.default=true,
+ check odd page/.is if=tcb@checkpage,
+ if odd page/.code 2 args={%
+ \tcbset{check odd page}%
+ \ifodd\thetcolorboxpage\tcbset{#1}\else\tcbset{#2}\fi%
+ },
phantom/.code={\appto\kvtcb@phantom{#1}},
step and label/.style 2 args={phantom={\refstepcounter{#1}\tcb@set@label{#2}}},%
step/.style={phantom={\refstepcounter{#1}}},%
@@ -668,7 +674,7 @@
\@endpefalse
\csname tcb@parbox@use@\kvtcb@parbox\endcsname%
\tcb@minipage#2\tcb@hyph@fix\ignorespaces}
-\def\endtcb@lrbox{\unskip\endminipage}
+\let\endtcb@lrbox=\endminipage
\let\tcb@savebox=\tcb@lrbox
\let\endtcb@savebox=\endtcb@lrbox
@@ -700,16 +706,18 @@
\def\tcb@set@@phantom{%
+ \iftcb@checkpage\tcb@phantom@savepage\fi%
\ifx\kvtcb@phantom\@empty\tcb@hasPhantomfalse\else%
\tcb@hasPhantomtrue%
\sbox\tcb@phantombox{\kvtcb@phantom}%
+ \let\kvtcb@phantom\@empty%
\fi%
}
\def\tcb@set@@title{%
\ifx\kvtcb@title\@empty\tcb@hasTitlefalse\tcb@specialtitle@hook\else%
\tcb@hasTitletrue%
- \tcbdimto\tcb@w@title{\kvtcb@width-(\kvtcb@left@rule)-(\kvtcb@right@rule)-(\kvtcb@boxsep)*2-(\kvtcb@lefttitle)-(\kvtcb@righttitle)}%
+ \tcbdimto\tcb@w@title{\kvtcb@width-(\kvtcb@left@rule+\kvtcb@right@rule+(\kvtcb@boxsep)*2+\kvtcb@lefttitle+\kvtcb@righttitle)}%
\begin{tcb@savebox}{\tcb@titlebox}{\tcb@w@title}\color{tcbcol@title}\kvtcb@fonttitle\kvtcb@haligntitle\kvtcb@before@title\kvtcb@title\kvtcb@after@title\end{tcb@savebox}%
\fi%
}
@@ -774,7 +782,7 @@
\let\tcb@after@box=\kvtcb@after@upper%
% switch for lower box
\def\tcblower{%
- \unskip\tcb@after@box%
+ \tcb@after@box%
\end{tcb@savebox}%
\tcb@set@color{tcbcol@lower}%
\unless\iftcb@sidebyside%
@@ -827,6 +835,35 @@
\tcb@finalize@environment%
}
+\def\tcb@count@boxes{%
+ \global\advance\tcolorbox@number by 1\relax%
+ \edef\thetcolorboxnumber{\number\tcolorbox@number}%
+ \expandafter\ifx\csname tcolorboxpage@\thetcolorboxnumber\endcsname\relax%
+ \edef\thetcolorboxpage{\number\c@page}%
+ \else%
+ \expandafter\let\expandafter\thetcolorboxpage\csname tcolorboxpage@\thetcolorboxnumber\endcsname%
+ \fi%
+}
+
+\def\tcolorbox@label{\@newl@bel{tcolorboxpage}}%
+
+\write\@auxout{\string\providecommand\string\tcolorbox@label[2]{}}%
+
+\def\tcolorbox@savepage#1{%
+ \@bsphack%
+ \write\@auxout{\string\tcolorbox@label{#1}{\number\c@page}}%
+ \@esphack%
+}%
+
+\def\tcb@phantom@savepage{\preto\kvtcb@phantom{\expandafter\tcolorbox@savepage\expandafter{\thetcolorboxnumber}}}
+
+\def\tcbifoddpage{%
+ \ifodd\thetcolorboxpage\relax%
+ \expandafter\@firstoftwo%
+ \else%
+ \expandafter\@secondoftwo%
+ \fi%
+}
\def\tcb@managed@layers@max{0}
\def\tcbsetmanagedlayers#1{%
@@ -853,6 +890,7 @@
}
\def\tcb@layer@inc{%
+ \tcb@count@boxes%
\stepcounter{tcblayer}%
\ifnum\c@tcblayer>1%
\tcbset{breakable@true/.code=}%
@@ -869,6 +907,8 @@
}
\def\tcb@layer@pushup{%
+ \tcb@count@boxes%
+ \global\advance\tcolorbox@number by -1\relax%
\stepcounter{tcblayer}%
\ifnum\c@tcblayer>1%
\tcbset{breakable@true/.code=}%
@@ -913,7 +953,7 @@
\let\tcolorbox\tcb@colorbox
\def\tcb@endboxanddraw{%
- \unskip\tcb@after@box%
+ \tcb@after@box%
\end{tcb@savebox}%
\tcb@reset@color%
\tcb@draw@color@box%
@@ -929,7 +969,7 @@
% height computations
\def\tcb@ch@natural{%
- \edef\tcb@height{\tcb@natheight}%
+ \let\tcb@height\tcb@natheight%
\tcbdimto\tcb@height@upper{\ht\tcb@upperbox+\dp\tcb@upperbox}%
\iftcb@lowerspace%
\tcbdimto\tcb@height@lower{\ht\tcb@lowerbox+\dp\tcb@lowerbox}%
@@ -955,13 +995,13 @@
\def\tcb@ch@fixed{%
\ifdim\tcb@natheight<\dimexpr\kvtcb@height@fixed\relax%
- \edef\tcb@height{\kvtcb@height@fixed}%
+ \tcbdimto\tcb@height{\kvtcb@height@fixed}%
\else%
\tcbdimto\tcb@temp{\kvtcb@height@fixed+\kvtcb@height@fixed@plus}%
- \ifdim\tcb@natheight>\tcb@temp%
- \edef\tcb@height{\tcb@temp}%
+ \ifdim\tcb@natheight>\tcb@temp\relax%
+ \let\tcb@height\tcb@temp%
\else%
- \edef\tcb@height{\tcb@natheight}%
+ \let\tcb@height\tcb@natheight%
\fi%
\fi%
\iftcb@lowerspace\tcb@ch@fixed@both\else\tcb@ch@fixed@upper\fi%
@@ -972,6 +1012,14 @@
\tcb@ch@fixed%
}
+\def\tcbheightfromgroup#1#2{%
+ \ifcsundef{tcb@ehg@height@#2}{%
+ \let#1\tcb@zpt%
+ }{%
+ \letcs{#1}{tcb@ehg@height@#2}%
+ }%
+}
+
\def\tcb@saveehg#1{%
\immediate\write\@auxout{\string\csgdef{tcb@ehg@height@#1}{\csuse{tcb@ehg@current@#1}}}%
}
@@ -992,12 +1040,12 @@
\tcb@ehgadd{\tcb@natheight}%
\ifcsdef{tcb@ehg@height@\tcb@ehgid}{%
\ifdim\csuse{tcb@ehg@height@\tcb@ehgid}<\tcb@natheight\relax%
- \edef\tcb@height{\tcb@natheight}%
+ \let\tcb@height\tcb@natheight%
\else%
\letcs{\tcb@height}{tcb@ehg@height@\tcb@ehgid}%
\fi%
}{%
- \edef\tcb@height{\tcb@natheight}%
+ \let\tcb@height\tcb@natheight%
}%
\iftcb@lowerspace\tcb@ch@fixed@both\else\tcb@ch@fixed@upper\fi%
}
@@ -1243,7 +1291,6 @@
\end{pgfscope}%
}
-
\def\tcb@setbb@toggle@none{%
\pgfpathrectanglecorners{\pgfqpoint{\the\dimexpr0pt-\kvtcb@bbleft\relax}{\the\dimexpr0pt-\kvtcb@bbbottom\relax}}%
{\pgfqpoint{\the\dimexpr\tcb@width+\kvtcb@bbright\relax}{\the\dimexpr\tcb@height+\kvtcb@bbtop\relax}}%
@@ -1254,16 +1301,8 @@
{\pgfqpoint{\the\dimexpr\tcb@width+\kvtcb@bbleft\relax}{\the\dimexpr\tcb@height+\kvtcb@bbtop\relax}}%
}
-\def\tcb@setbb@toggle@evenpage@easy{%
- \ifodd\thepage\tcb@setbb@toggle@none\else\tcb@setbb@toggle@forced\fi%
-}
-
-\def\tcb@setbb@toggle@evenpage@strict{%
- \ifoddpage\tcb@setbb@toggle@none\else\tcb@setbb@toggle@forced\fi%
-}
-
\def\tcb@setbb@toggle@evenpage{%
- \csname tcb@setbb@toggle@evenpage@\tcb@evenoddmode\endcsname%
+ \ifodd\thetcolorboxpage\tcb@setbb@toggle@none\else\tcb@setbb@toggle@forced\fi%
}
\def\tcb@creategeonodes@false{}
@@ -1283,20 +1322,11 @@
\tcb@swap{\kvtcb@leftlower}{\kvtcb@rightlower}%
}
-\def\tcb@lrtoggle@evenpage@easy{%
- \unless\ifodd\thepage\tcb@lrtoggle@forced\fi%
-}
-
-\def\tcb@lrtoggle@evenpage@strict{%
- \unless\ifoddpage\tcb@lrtoggle@forced\fi%
-}
-
\def\tcb@lrtoggle@evenpage{%
- \csname tcb@lrtoggle@evenpage@\tcb@evenoddmode\endcsname%
+ \unless\ifodd\thetcolorboxpage\tcb@lrtoggle@forced\fi%
}
\def\tcb@bbdraw{%
- \tcb@checkoddpage%
\tcb@lrtoggle%
\tcb@setbb@toggle%
\pgfusepath{use as bounding box}%
@@ -1511,7 +1541,7 @@
\tcb@set@@phantom%
\colorlet{tcbcol@origin}{.}%
\tcb@set@color{tcbcol@upper}%
- \sbox\tcb@upperbox{\tcb@embed@tcbox{\kvtcb@fontupper\kvtcb@halignupper\kvtcb@before@upper\ignorespaces#1\unskip\kvtcb@after@upper}}%
+ \sbox\tcb@upperbox{\tcb@embed@tcbox{\kvtcb@fontupper\kvtcb@halignupper\kvtcb@before@upper\ignorespaces#1\kvtcb@after@upper}}%
\tcb@reset@color%
\tcbdimto\tcb@val@raisebase{\the\dimexpr\dp\tcb@upperbox+\kvtcb@bottom+\kvtcb@boxsep+\kvtcb@bottom@rule@stand+\kvtcb@bbbottom@stand\relax}%
\tcbdimto\kvtcb@width{\wd\tcb@upperbox+\kvtcb@left@rule+\kvtcb@leftupper+\kvtcb@boxsep*2+\kvtcb@rightupper+\kvtcb@right@rule}%
@@ -1529,7 +1559,7 @@
\tcb@set@@dimensions%
\colorlet{tcbcol@origin}{.}%
\tcb@set@color{tcbcol@upper}%
- \begin{tcb@savebox}{\tcb@upperbox}{\tcb@w@upper}\kvtcb@fontupper\kvtcb@halignupper\kvtcb@before@upper\ignorespaces#1\unskip\kvtcb@after@upper\end{tcb@savebox}%
+ \begin{tcb@savebox}{\tcb@upperbox}{\tcb@w@upper}\kvtcb@fontupper\kvtcb@halignupper\kvtcb@before@upper\ignorespaces#1\kvtcb@after@upper\end{tcb@savebox}%
\tcb@reset@color%
\tcb@hasLowerfalse%
\tcb@draw@color@box%