Ich versuche, das folgende mdframed
Beispiel aus demPaketdokumentationfunktioniert ( mdframed-example-default
Seite 5), aber es werden die folgenden Fehler ausgegeben
Missing number, treated as zero T
Illegal unit of measure (pt inserted) T
und zeigt ein eigenartiges „pt“ an, bevor der Umgebungsinhalt gedruckt wird, wobei das Titelfeld zu niedrig positioniert ist. Wie kann ich das beheben? Das Titelfeld sollte genau in der Mitte der obersten Zeile stehen.
\documentclass{article}
\usepackage{tikz,mdframed}
\begin{document}
\mdfsetup{skipabove=\topskip,skipbelow=\topskip}
\newcounter{theo}[section]
\newenvironment{theo}[1][]{%
\stepcounter{theo}%
\ifstrempty{#1}%
{\mdfsetup{%
frametitle={%
\tikz[baseline=(current bounding box.east),outer sep=0pt]
\node[anchor=east,rectangle,fill=blue!20]
{\strut Theorem~\thetheo};}}%
}%
{\mdfsetup{%
frametitle={%
\tikz[baseline=(current bounding box.east),outer sep=0pt]
\node[anchor=east,rectangle,fill=blue!20]
{\strut Theorem~\thetheo:~#1};}}%
}%
\mdfsetup{innertopmargin=10pt,linecolor=blue!20,%
linewidth=2pt,topline=true,
frametitleaboveskip=\dimexpr−\ht\strutbox\relax,}
\begin{mdframed}[]\relax%
}{\end{mdframed}}
\begin{theo}
This is an example theorem
%
\begin{equation}
a^2 + b^2 = c^2
\end{equation}
\end{theo}
\end{document}
ergebend
Antwort1
Die Linie
frametitleaboveskip=\dimexpr−\ht\strutbox\relax
hat direkt davor ein seltsames Zeichen (wahrscheinlich ein Ergebnis des Kopier- und Einfügevorgangs), \ht
das durch ein normales Minuszeichen ersetzt werden muss:
frametitleaboveskip=\dimexpr-\ht\strutbox\relax
Der Code:
\documentclass{article}
\usepackage{tikz,mdframed}
\mdfsetup{skipabove=\topskip,skipbelow=\topskip}
\newcounter{theo}[section]
\newenvironment{theo}[1][]{%
\stepcounter{theo}%
\ifstrempty{#1}%
{\mdfsetup{%
frametitle={%
\tikz[baseline=(current bounding box.east),outer sep=0pt]
\node[anchor=east,rectangle,fill=blue!20]
{\strut Theorem~\thetheo};}}%
}%
{\mdfsetup{%
frametitle={%
\tikz[baseline=(current bounding box.east),outer sep=0pt]
\node[anchor=east,rectangle,fill=blue!20]
{\strut Theorem~\thetheo:~#1};}}%
}%
\mdfsetup{innertopmargin=10pt,linecolor=blue!20,%
linewidth=2pt,topline=true,
frametitleaboveskip=\dimexpr-\ht\strutbox\relax,}
\begin{mdframed}[]\relax%
}{\end{mdframed}}
\begin{document}
\begin{theo}
test
\begin{equation}
a^2 + b^2 = c^2
\end{equation}
\end{theo}
\end{document}