Les macros de commande fournissent des raccourcis nommés pour les jeux de commandes. Les macros sont définies dans des fichiers de définition de macro distincts, qui peuvent être joints aux catalogues d’images ou au catalogue par défaut.
$ *
nom*$
name |
Nom de la macro. |
*
name*
n’est pas sensible à la casse et peut se composer de n’importe quelle combinaison de lettres ASCII, nombres , '-', '_' et '.' caractères.
Les macros peuvent être invoquées n’importe où dans une requête après "?" et n’importe où dans une catalog::Modifier
ou catalog::PostModifier
champ . Les macros ne peuvent représenter qu’une ou plusieurs commandes de diffusion d’images, complètes et doivent être séparées des autres commandes avec &
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. Ce flux de traitement diffère de catalog::Modifier
, où les commandes de la chaîne de requête remplacent toujours les commandes dans la variable catalog::Modifier
chaîne, 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 peuvent être imbriquées. Cependant, une macro ne peut être appelée que si elle est déjà définie au moment de l’analyse de la définition de macro. Ce workflow est effectué soit en apparaissant plus tôt dans le même fichier de définition de macro, soit en plaçant la définition d’une telle macro incorporée dans le fichier de définition de macro par défaut.
Les macros peuvent s’avérer utiles si les mêmes attributs doivent être appliqués à différentes images.
http://server/cat/1345?wid=240&fmt=jpeg&qlt=85&op_usm=5,2&bgc=200,200,200&align=-1,-1 http://server/cat/1435?wid=240&fmt=jpeg&qlt=85&op_usm=5,2&bgc=200,200,200&align=-1,-1 http://server/cat/8243?wid=480&fmt=jpeg&qlt=85&op_usm=5,2&bgc=200,200,200&align=-1,-1
Vous pouvez définir une macro pour les attributs communs :
view wid=240&fmt=jpeg&qlt=85&op_usm=5,2&bgc=200,200,200&align=-1,-1
La macro sera utilisée comme suit :
http://server/cat/1345?$view$ http://server/cat/1435?$view$ http://server/cat/8243?$view$&wid=480
Parce que wid=
est différent pour la troisième requête, vous pouvez simplement remplacer la valeur . after la macro est appelée (spécification wid=
before $view$
n’a aucun effet).
catalogue ::MacroFile , catalogue : Modificateur, Référence de définition de macro