Macros de commande *

Les macros de commande fournissent des raccourcis nommés pour les jeux de commandes.

$ *name*$

name Nom de la macro

Les macros sont définies dans des fichiers de définition de macro distincts, qui peuvent être joints à des catalogues de matériaux ou au catalogue par défaut.

name n’est pas sensible à la casse et peut se composer de n’importe quelle combinaison de lettres ASCII, de nombres, de "-", de "_" et de "." caractères.

Appelez des macros n’importe où dans une requête après "?" ou n’importe où dans un champ vignette::Modifier. Les macros ne peuvent représenter qu’une ou plusieurs commandes de rendu d’image complètes et doivent être séparées des autres commandes avec les séparateurs "&".

Les appels de macro sont remplacés par leurs chaînes de substitution tôt lors de l’analyse. Les commandes des macros remplacent les mêmes commandes de la requête si elles se produisent avant l’appel de macro dans la requête. Ceci est différent de vignette::Modifier, où les commandes de la chaîne de requête remplacent toujours les commandes de la chaîne vignette::Modifier, quelle que soit la position dans la requête.

Les macros de commande ne peuvent pas comporter de valeurs d’argument, mais des variables personnalisées peuvent être utilisées pour transmettre des valeurs de la requête dans la macro.

Les macros ne peuvent pas être imbriquées.

Exemple

Les macros peuvent s’avérer utiles si les mêmes commandes ou attributs doivent être appliqués à différentes images générées.

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

Vous pouvez définir une macro pour les attributs communs :

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

La macro sera utilisée comme suit :

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

Comme qlt= est différent pour la troisième requête, nous remplaçons simplement la valeur après l’appel de la macro (la spécification de qlt=before $render$n’aurait aucun effet).

Voir aussi

catalog::MacroFile, catalog::Modifier, Référence de définition de macro

Sur cette page