Sdílet prostřednictvím


Blokové makra

Důležité

Moderní tisková platforma je upřednostňovaná pro komunikaci s tiskárnami ve Windows. Doporučujeme použít ovladač třídy doručené pošty IPP od Microsoftu spolu s tiskovými podpůrnými aplikacemi (PSA) k přizpůsobení prostředí tisku ve Windows 10 a 11 pro vývoj zařízení tiskárny.

Další informace najdete v průvodci návrhem aplikace Podpora tisku.

Blokové makro slouží k oddělení sady položek souboru GPD, které chcete vložit opakovaně do souboru GPD. Do definice blokového makra můžete zahrnout libovolný typ položky, jako jsou příkazy funkcí a možností, specifikace atributů a odkazy na makra hodnot nebo jiná bloková makra.

Pro použití blokových maker platí následující pravidla:

  • Před odkazy na něj musí být umístěna definice blokového makra v souboru GPD.

  • Blokové makro definované na kořenové úrovni (tj. ne uvnitř složených závorek) je k dispozici prostřednictvím souboru GPD, který ho definuje, po jeho definování. V opačném případě je obor blokového makra množina závorek vlevo a vpravo obsahující jeho definici.

  • Definice blokového makra může obsahovat definice dalších blokových maker a hodnotových maker.

  • Definice blokového makra může odkazovat na jiná dříve definovaná makra bloku a makra hodnot, ale nemůže na sebe odkazovat.

  • Blokovaná makra nepřijímají argumenty.

  • Pokud jsou složené závorky zahrnuty v těle makra, musí být spárované (to znamená, že je zapotřebí stejný počet levých a pravých závorek).

  • Pokud vytvoříte dvě bloková makra se stejným názvem, první definice se projeví, dokud analyzátor GPD nenarazí na druhou definici. Druhá definice pak nahradí první. Pokud obor druhé definice končí, první definice se obnoví.

Blokovat formát makra

Chcete-li definovat blokové makro v souboru GPD, použijte následující formát:

* BlockMacro: BlockMacroName {BlockMacroBody}

kde BlockMacroName je jedinečný název a BlockMacroBody je sada jedné nebo více položek souboru GPD. Pokud BlockMacroBody obsahuje složené závorky, musí být zahrnut stejný počet levých a pravých závorek ( {, } ).

Můžete například definovat blokové makro s názvem ObálkaDefaults, které je definováno takto:

*BlockMacro: EnvelopeDefaults
{
    *PrintableArea: PAIR(4646, 6738)
    *PrintableOrigin: PAIR(150, 150)
    *RotateSize: TRUE
}

Odkazování na bloková makra

Pokud chcete odkazovat na blokové makro, použijte následující formát:

*InsertBlock: =BlockMacroName

where BlockMacroName je jedinečný název, který byl dříve zadán v položce *BlockMacro , která definuje makro.

Pokud například chcete odkazovat na makro EnvelopeDefaults ve specifikaci možnosti, můžete použít následující položky:

*Option: Env9
{
    *InsertBlock: =EnvelopeDefaults
}