
TeX kennt den Unterschied zwischen einem „linken“ und einem „rechten“ Trennzeichen (z. B. (
und )
) und passt den Abstand entsprechend an. Die linke und die rechte Version des Trennzeichens |
sind jedoch gleich, sodass TeX raten muss. Normalerweise rät TeX richtig, aber manchmal nicht. Jetzt weiß ich, dass ich \left
und verwenden kann, um TeX zu zwingen, ein gegebenes als linkes oder rechtes Trennzeichen \right
zu betrachten , dies hat jedoch den zusätzlichen Effekt, dass die Größe geändert wird (was ich vielleicht nicht möchte). Selbst die kleinsten „großen“ Befehle und erhöhen die Größe (wenn auch nur um einen kleinen Betrag). Gibt es eine Möglichkeit, ein linkes oder rechtes Trennzeichen zu erstellen, ohne seine Größe überhaupt zu ändern?|
\bigl
\bigr
|
Hier ist ein konkretes Beispiel, bei dem ich weiß, wie es geht, das aber keine allgemeine Lösung ist:
\documentclass{article}
\usepackage{amsmath,amssymb}
\begin{document}
$|\operatorname{A}|$
$|{\operatorname{A}}|$
$\left|\operatorname{A}\right|$
\end{document}
Der Abstand ist in der ersten Zeile falsch und in der zweiten und dritten Zeile richtig. Die zweite Zeile funktioniert gut, kommt mir aber etwas abgehackt vor. Die dritte Zeile ist nicht gut, da sie die Trennzeichen vergrößern würde, wenn das Material dazwischen höher wäre (und das möchte ich vielleicht nicht).
|
(Ja, ich weiß, dass der Grund für die falsche Leerzeichen in der ersten Zeile darin liegt, dass TeX die zweite als „Argument“ von behandelt \operatorname{A}
.)
Antwort1
Wenn Sie in einer mathematischen Formel sagen, \mathopen|
dann wird der vertikale Strich als offenes Atom interpretiert (dh, ein linkes Trennzeichen), dessen Größe jedoch nicht geändert wird. In ähnlicher Weise \mathclose|
ergibt sich ein Close-Atom (dh, ein rechtes Trennzeichen) ohne Änderung der Größe. Siehe auch die Lösung zu Übung 18.14 inDas TeXbook. MWE:
% My standard header for TeX.SX answers:
\documentclass[a4paper]{article} % To avoid confusion, let us explicitly
% declare the paper format.
\usepackage[T1]{fontenc} % Not always necessary, but recommended.
% End of standard header. What follows pertains to the problem at hand.
\begin{document}
For example, \( \mathopen|-x\mathclose| \neq |-x| \).
\end{document}
Ungeachtet dessen denke ich, dass die Lösung, die @Bernard empfiehlt inein Kommentar, das heißt, zu verwenden \DeclarePairedDelimiter
, ist das Richtige.
Bearbeiten:
Wie Barbara Beeton in ihrem Kommentar erinnert, können Sie, wenn das Problem auf einfache und doppelte vertikale Striche beschränkt ist (und Sie das mathtools
Paket lieber nicht laden, sondern bei bleiben möchten ), auch die vier vordefinierten Befehle , , , und amsmath
verwenden : steht für „links“, für „rechts“, Kleinbuchstaben für einfachen Strich, Großbuchstaben für doppelten Strich.\lvert
\rvert
\lVert
\rVert
l
r
v
V
Eine ausführlichere Diskussion finden Sie beispielsweise unterVerwendung von \big| und \right| im Vergleich zu \bigr\rvert und \right\rvert(Ich erinnere mich an diese Frage, weil eine der Antworten meine war!).