This is documentation for Mathematica 4, which was
based on an earlier version of the Wolfram Language.
View current documentation (Version 11.1)

 Documentation /  Mathematica /  Das Mathematica Buch /  Die Prinzipien von Mathematica /  Textförmige Eingabe und Ausgabe /

Stile und Schriften in der AusgabeÄndern von Details der Formatierung

2.8.10 Darstellung textueller Formen durch Boxen

Alle textuellen Formen werden in Mathematica letztendlich als verschachtelte Sätze von Boxen dargestellt. Die Elemente dieser Boxen entsprechen in der Regel Objekten, die an bestimmte relative Positionen in zwei Dimensionen plaziert werden sollen.

Dies sind die Boxen entsprechend dem Ausdruck a + b.

In[1]:= ToBoxes[a + b]

Out[1]=

DisplayForm zeigt, wie diese Boxen dargestellt werden würden.

In[2]:= DisplayForm[%]

Out[2]//DisplayForm=

Die dargestellte Form von Boxen zeigen

Dies zeigt drei Zeichenketten in einer Zeile.

In[3]:= RowBox[{"a", "+", "b"}] // DisplayForm

Out[3]//DisplayForm=

Dies zeigt eine Zeichenkette als Index zu einer anderen.

In[4]:= SubscriptBox["a", "i"] // DisplayForm

Out[4]//DisplayForm=

Dies setzt zwei Subscript-Boxen in eine Zeile.

In[5]:= RowBox[{SubscriptBox["a", "1"], SubscriptBox["b", "2"]}] //
DisplayForm

Out[5]//DisplayForm=

Einige Grund-Box-Arten

Dies verschachtelt einen Bruch in einem Wurzelausdruck.

In[6]:= RadicalBox[FractionBox[x, y], n] // DisplayForm

Out[6]//DisplayForm=

Dies setzt ein hochgestelltes Zeichen über ein tiefgestelltes Objekt.

In[7]:= SuperscriptBox[SubscriptBox[a, b], c] // DisplayForm

Out[7]//DisplayForm=

Dies fügt demselben Objekt sowohl ein tief- als auch ein hochgestelltes Zeichen hinzu.

In[8]:= SubsuperscriptBox[a, b, c] // DisplayForm

Out[8]//DisplayForm=

Rahmen und Gitterlinien einfügen

Dies zeigt einen Bruch in einem Rahmen.

In[9]:= FrameBox[FractionBox["x", "y"]] // DisplayForm

Out[9]//DisplayForm=

Dies setzt Linien zwischen Zeilen und Spalten eines Arrays.

In[10]:= GridBox[Table[i+j, {i, 3}, {j, 3}], RowLines->True,
ColumnLines->True] // DisplayForm

Out[10]//DisplayForm=

Und dies legt außerdem noch einen Rahmen um das Ganze.

In[11]:= FrameBox[%] // DisplayForm

Out[11]//DisplayForm=

Änderung des Aussehens von Boxen

StyleBox akzeptiert dieselben Optionen wie StyleForm. Der Unterschied besteht darin, daß StyleForm als „Hülle" für einen Ausdruck agiert, während StyleBox die zugrundeliegende Box-Struktur repräsentiert.

Dies zeigt die Zeichenkette "Name" kursiv.

In[12]:= StyleBox["Name", FontSlant->"Italic"] // DisplayForm

Out[12]//DisplayForm=

Dies zeigt "Name" im Stil für Abschnittsüberschriften des aktuellen Notebooks.

In[13]:= StyleBox["Name", "Section"] // DisplayForm

Out[13]//DisplayForm=

Hier wird der Stil für Abschnittsüberschrift verwendet, die Zeichen werden aber grau gezeigt.

In[14]:= StyleBox["Name", "Section", FontColor->GrayLevel[0.5]] // DisplayForm

Out[14]//DisplayForm=

Wenn Sie eine Notebook-Benutzeroberfläche für Mathematica verwenden, dann werden Sie den Stil und das, was Sie auf dem Bildschirm sehen, direkt mit Menübefehlen ändern können. Intern werden diese Änderungen jedoch immer noch durch Einfügen geeigneter StyleBox-Objekte aufgezeichnet.

Die Interpretation von Boxen kontrollieren

Dies wird als mit einer Hochstellung gedruckt.

In[15]:= SuperscriptBox["x", "2"] // DisplayForm

Out[15]//DisplayForm=

Dies wird normalerweise als Potenz interpretiert.

In[16]:= ToExpression[%] // InputForm

Out[16]//InputForm= x^2

Auch dies wird als mit einem hochgestellten Zeichen gedruckt.

In[17]:= InterpretationBox[SuperscriptBox["x", "2"],
vec[x, 2]] // DisplayForm

Out[17]//DisplayForm=

Aber nun wird es als vec[x, 2] interpretiert, entsprechend der Spezifikation in der InterpretationBox.

In[18]:= ToExpression[%] // InputForm

Out[18]//InputForm= vec[x, 2]

Wenn Sie die in einer InterpretationBox angegebenen Boxen editieren, dann gibt es keine Garantie, daß die durch die Interpretations-Box spezifizierte Interpretation noch korrekt ist. Deshalb stellt Mathematica verschiedene Optionen zur Verfügung, mit denen die Auswahl und Editierung von InterpretationBox-Objekten kontrolliert werden kann.

Optionen für InterpretationBox und verwandte Boxen

Mit TagBox-Objekten wird Information gespeichert, die nicht dargestellt wird, die aber dennoch von den Regeln, die Boxen interpretieren, verwendet werden kann. In der Regel ist marke in TagBox[boxen, marke] ein Symbol, das den Kopf des zu boxen gehörigen Ausdruckes angibt. Wenn Sie nur die Argumente dieses Ausdruckes editieren, dann wird die Interpretation, die durch TagBox spezifiziert wird, wahrscheinlich immer noch angemessen sein. Deshalb ist Editable->True die Voreinstellung für eine TagBox.

Die Regeln, die Mathematica zur Interpretation von Boxen verwendet, sind im allgemeinen so konstruiert, daß sie die Details der Formatierung ignorieren, wie sie zum Beispiel durch StyleBox-Objekte definiert werden. Außer wenn StripWrapperBoxes->False gilt, wird deshalb zum Beispiel ein rotes x nicht von einem gewöhnlichen schwarzen x unterschieden.

Ein rotes x wird normalerweise genauso wie ein gewöhnliches behandelt.

In[19]:= ToExpression[
StyleBox[x, FontColor->RGBColor[1,0,0]]] == x

Out[19]=

Konstruktion aktiver Elemente

In einem Mathematica-Notebook lassen sich Elemente konstruieren, die eine Aktion ausführen, wann immer Sie sie anklicken. Diese Elemente werden intern durch ButtonBox-Objekte dargestellt. Wenn Sie einen Ausdruck erstellen, der eine ButtonBox enthält, dann werden Sie den Inhalt der ButtonBox so lange direkt editieren können, wie die Option Active für die Zelle, die den Ausdruck enthält, False ist. Sobald Sie Active->True setzen, wird die ButtonBox ihre Aktion ausführen, wann immer sie angeklickt wird.

In Abschnitt 2.10.6 wird beschrieben, wie sich für ButtonBox-Objekte Aktionen konstruieren lassen.

Stile und Schriften in der AusgabeÄndern von Details der Formatierung