Macros de comando

As macros de comando fornecem atalhos nomeados para conjuntos de comandos.

$ *name*$

name Nome da macro

As macros são definidas em arquivos separados de definição de macro, que podem ser anexados a catálogos de materiais ou ao catálogo padrão.

name não diferencia maiúsculas de minúsculas e pode consistir de qualquer combinação de letras ASCII, números , '-', '_' e '.' caracteres.

Chame macros em qualquer lugar em uma solicitação após o '?' ou em qualquer lugar dentro de uma vignette::Modifier campo. As macros só podem representar um ou mais comandos de Renderização de Imagem e devem ser separadas de outros comandos com separadores '&'.

As invocações de macro são substituídas por suas sequências de substituição precocemente durante a análise. Os comandos em macros substituem os mesmos comandos na solicitação se ocorrerem antes da chamada de macro na solicitação. Esse workflow é diferente de vignette::Modifier, em que os comandos na cadeia de caracteres de solicitação substituem os comandos no vignette::Modifier , independentemente da posição na solicitação.

As macros de comando não podem ter valores de argumento, mas variáveis personalizadas podem ser usadas para transmitir valores da solicitação para a macro.

As macros podem não estar aninhadas.

Exemplo

As macros podem ser úteis se os mesmos comandos ou atributos forem aplicados a imagens renderizadas diferentes.

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

Você pode definir uma macro para os atributos comuns:

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

A macro seria usada da seguinte maneira:

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

Porque qlt= for diferente para a terceira solicitação, o software substituirá o valor depois que a macro for chamada (especificando qlt= before $render$é ineficaz).

Consulte também

catalog::MacroFile, catalog::Modifier, Referência de definição de macro

Nesta página