SetVariable
Weist einer Variablen einen Wert zu. Der Wert kann aus mehreren Elementen bestehen (siehe zweites Beispiel).
Kindelemente
Attribute
, ClearPage
, Column
, Columns
, Copy-of
, Element
, ForAll
, Loop
, Output
, Paragraph
, PlaceObject
, SortSequence
, Switch
, Table
, TableNewPage
, Tablehead
, Tablerule
, Td
, Tr
, Value
Elternelemente
AtPageCreation
, AtPageShipout
, Case
, Contents
, ForAll
, Function
, Include
, Layout
, Loop
, Otherwise
, Record
, SavePages
, Table
, Until
, While
Attribute
execute
(optional, seit Version 4.11.8)-
Führe den Inhalt sofort aus oder später bei der Benutzung.
now
-
Führe den Inhalt sofort aus (Voreinstellung).
later
-
Führe den Inhalt bei der Benutzung von Copy-of aus. Experimentell.
select
(XPath-Ausdruck, optional)-
Inhalt, der der Variablen zugewiesen wird.
trace
(optional)-
Zeige Informationen über die Zuweisung in der Logdatei.
yes
-
Zeige Informationen.
no
-
Zeige keine Informationen (Voreinstellung).
type
(optional, seit Version 4.3.10)-
Setzt den Datentyp der Variable. Derzeit nur für MetaPost-Variablen unterstützt.
sd:any
-
Der voreingestellte Datentyp für die speedata Layoutsprache.
mp:boolean
-
Ein boolescher Wert für MetaPost.
mp:cmykcolor
-
Eine MetaPost CMYK Farbe.
mp:numeric
-
Ein nummerischer Wert für MetaPost.
mp:string
-
Eine Zeichenkette für MetaPost.
mp:rgbcolor
-
Eine MetaPost RGB Farbe.
variable
(Text)-
Name der Variablen, der etwas zugewiesen werden soll.
Bemerkungen
Variablen haben eine globale Sichtbarkeit.
Beispiel
<Record element="produkt">
<SetVariable variable="Textbreite" select="5"/>
<PlaceObject>
<Textblock width="{ $Textbreite }">
<Paragraph>
<Value select="$Artikelnummer"/>
</Paragraph>
</Textblock>
</PlaceObject>
</Record>
Folgendes Beispiel zeigt, wie mehrere Absätze in einer Variablen gespeichert werden, um sie anschließend in einem Textblock auszugeben.
<Record element="produkte">
<SetVariable variable="Artikeltext"/>
<ProcessNode select="artikel"/>
<PlaceObject>
<Textblock>
<Value select=" $Artikeltext "/>
</Textblock>
</PlaceObject>
</Record>
<Record element="artikel">
<SetVariable variable="Artikeltext">
<!-- Der vorherige Inhalt wird hinzugefügt -->
<Value select="$Artikeltext"/>
<Paragraph>
<Value select=" @beschreibung " />
</Paragraph>
</SetVariable>
</Record>
Siehe auch
Die Kapitel Programmierung und Bilder mit MetaPost erstellen und einbinden.