Befehlsmakros

Letzte Aktualisierung: 2022-03-04
  • Erstellt für:
  • Developer
    User

Befehlsmakros bieten spezifische Tastaturbefehle für Befehlssätze.

$ *name*$

name Name des Makros

Makros werden in separaten Makro-Definitionsdateien definiert, die an Materialkataloge oder den Standardkatalog angehängt werden können.

name unterscheidet nicht zwischen Groß- und Kleinschreibung und kann aus einer beliebigen Kombination aus ASCII-Buchstaben, Zahlen , '-', '_' und '.' bestehen. Zeichen.

Aufrufen von Makros an einer beliebigen Stelle in einer Anforderung nach dem "?" oder an einer beliebigen Stelle in einer vignette::Modifier -Feld. Makros können nur einen oder mehrere Image Rendering-Befehle darstellen und müssen von anderen Befehlen mit "&"Trennzeichen getrennt werden.

Makroaufrufe werden während des Parsens durch ihre Ersatzzeichenfolgen ersetzt. Befehle in Makros überschreiben dieselben Befehle in der Anfrage, wenn sie vor dem Makroaufruf in der Anfrage auftreten. Dieser Workflow unterscheidet sich von vignette::Modifier, wobei Befehle in der Anfragezeichenfolge Befehle in der vignette::Modifier Zeichenfolge, unabhängig von der Position in der Anforderung.

Befehlsmakros können keine Argumentwerte haben, aber benutzerdefinierte Variablen können verwendet werden, um Werte aus der Anfrage an das Makro zu übergeben.

Makros können nicht verschachtelt sein.

Beispiel

Makros können nützlich sein, wenn dieselben Befehle oder Attribute auf verschiedene gerenderte Bilder angewendet werden sollen.

http://server/ir/render/cat/vig0?fmt=jpeg&qlt=80&sharpen=1&src=cat/matA&res=40 http://server/ir/render/cat/vig1?fmt=jpeg&qlt=80&sharpen=1&src=cat/matB&res=40 http://server/ir/render/cat/vig2?fmt=jpeg&qlt=95&sharpen=1&src=cat/matC&res=40

Sie können ein Makro für die allgemeinen Attribute definieren:

render vignette=cat/$vig$&fmt=jpg&qlt=80&sharpen=1&src=cat/$mat$&res=40

Das Makro würde wie folgt verwendet:

http://server/ir/render/cat/vig0?$mat=matc&$render$ http://server/ir/render/cat/vig0?$mat=matc&$render$ http://server/ir/render/cat/vig0?$mat=matc&$render$&qlt=95

weil qlt= unterscheidet sich für die dritte Anforderung, überschreibt die Software den Wert, nachdem das Makro aufgerufen wurde (Angabe von qlt= before $render$nicht wirksam ist).

Verwandte Themen

catalog::MacroFile, catalog::Modifier, Referenz zur Makrodefinition

Auf dieser Seite