Wie kann ich eine globale Einstellung vornehmen, um alle angezeigten und eingebetteten mathematischen Berechnungen einzurahmen?

Wie kann ich eine globale Einstellung vornehmen, um alle angezeigten und eingebetteten mathematischen Berechnungen einzurahmen?

Ich habe keine Ahnung, wie man eine globale Einstellung vornimmt, um jede angezeigte und eingebettete Mathematik in eine Box einzuschließen. Die Box ist mit farbigen Rahmen, farbigem Hintergrund und farbigem Vordergrund (entweder Text oder Mathematik) dekoriert.

Indem ich die globale Einstellung vornehme, kann ich es einfach ein- oder ausschalten und der Rest bleibt unverändert.

Ich weiß, dass es zwei Makros gibt, \everydisplayund \everymath, aber ich kann sie nicht anders verwenden \color{red}, als beispielsweise mit die Strichfarbe zu ändern.

Antwort1

Zum Abspielen fügt das folgende Beispiel eine \fboxInline-Mathematik hinzu:

\documentclass{article}

\newsavebox{\mymathbox}
\everymath{%
  \mathsurround=0pt$%
  \begin{lrbox}{\mymathbox}\everymath{}$%
  \aftergroup\mathboxend
}
\newcommand*{\mathboxend}{%
  \end{lrbox}%
  \fbox{\usebox{\mymathbox}}%
}

\begin{document}

$abc$ Hello\textsuperscript{World}

\begin{tabular}{l}Hello\\World\end{tabular}

\begin{minipage}{4em}Hello\\World\end{minipage}

\begin{minipage}[t]{4em}Hello\\World\end{minipage}

\end{document}

Aktualisieren:Erläuterung und \mathsurround=0ptErgänzung.

Das Ziel ist, so etwas zu haben wie

\fbox{$...$}

Wenn \everymathaufgerufen wird, sind wir bereits im Mathemodus. Daher $beendet das erste den Mathemodus. Der durch gegebene Platz \mathsurroundwürde um die leere Formel herum gesetzt werden, daher wird er auf Null gesetzt.

Anschließend wird eine horizontale Box geöffnet ( lrbox) und wir wechseln wieder in den Mathemodus, allerdings mit leerem \everymath. Über \aftergroupgelangen wir zum Punkt direkt nach dem Schließen $und können die Box schließen und mit setzen \fbox.

Variationhinzugefügt.

Wir könnten auch die Mathe-Gruppe an Ort und Stelle lassen und Folgendes hineinstellen lrbox:

\everymath{%
  \begin{lrbox}{\mymathbox}%
  \everymath{}$\mathsurround=0pt\relax
  \aftergroup\mathboxend
}
\newcommand*{\mathboxend}{%
  \end{lrbox}%
  \fbox{\usebox{\mymathbox}}%
  $%
}

Der Unterschied dieser Methoden liegt in der Behandlung von \mathsurround, wenn es ungleich Null ist. Im ersten Fall wird der Raum innerhalb der Box platziert, im zweiten Fall außerhalb.

Allerdings gibt es bei dieser allgemeinen Methode einen gravierenden Nachteil \everymath. Inline-Mathematik wird an vielen verschiedenen Stellen verwendet, daher werden im Beispiel auch Kästchen an Stellen angezeigt, an denen Inline-Mathematik nicht erwartet wird.

Inline-Mathematik mit \fbox

verwandte Informationen