MDFramed-Beispiel wirft Fehler

MDFramed-Beispiel wirft Fehler

Ich versuche, das folgende mdframedBeispiel aus demPaketdokumentationfunktioniert ( mdframed-example-defaultSeite 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

Bildbeschreibung hier eingeben

Antwort1

Die Linie

frametitleaboveskip=\dimexpr−\ht\strutbox\relax

hat direkt davor ein seltsames Zeichen (wahrscheinlich ein Ergebnis des Kopier- und Einfügevorgangs), \htdas 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}

Bildbeschreibung hier eingeben

verwandte Informationen