块宏
重要
新式打印平台是 Windows 与打印机通信的首选方式。 建议使用 Microsoft 的 IPP 收件箱类驱动程序以及打印支持应用 (PSA) 来自定义 Windows 10 和 11 中的打印体验,以便进行打印机设备开发。
有关详细信息,请参阅新式打印平台和打印支持应用设计指南。
块宏可用于限定一组 GPD 文件条目,以便在 GPD 文件中重复插入这些条目。 可以在块宏定义中包含任何条目类型,如特征和选项语句、属性规范以及对值宏或其他块宏的引用。
以下规则适用于块宏的使用:
GPD 文件中的块宏定义必须位于对它的任何引用之前。
在根级别(即不在大括号内)定义的块宏在定义后可通过定义它的 GPD 文件使用。 否则,块宏的范围就是包含其定义的左括号和右括号的集合。
区块宏定义可包含其他区块宏和值宏的定义。
块宏定义可以引用其他先前定义的块宏和值宏,但不能引用自身。
块宏不接受参数。
如果宏主体中包含括号,则必须成对(即左括号和右括号的数量必须相等)。
如果创建了两个同名的块宏,则第一个定义将生效,直到 GPD 解析器遇到第二个定义。 然后,第二个定义会替换第一个定义。 如果第二个定义的范围已结束,则会恢复第一个定义。
块宏格式
在 GPD 文件中定义块宏时,请使用以下格式:
*BlockMacro: BlockMacroName {BlockMacroBody}
其中,BlockMacroName 是一个唯一的名称,BlockMacroBody 是一组一个或多个 GPD 文件条目。 如果 BlockMacroBody 包含大括号,则必须包含相同数量的左右大括号 ( {, } )。
例如,可以定义一个名为 EnvelopeDefaults 的块宏,其定义如下:
*BlockMacro: EnvelopeDefaults
{
*PrintableArea: PAIR(4646, 6738)
*PrintableOrigin: PAIR(150, 150)
*RotateSize: TRUE
}
引用块宏
要引用块宏,请使用以下格式:
*InsertBlock: =BlockMacroName
其中,BlockMacroName 是一个唯一的名称,先前在定义宏的 *BlockMacro 条目中指定。
例如,要在选项规范中引用 EnvelopeDefaults 宏,则可以使用以下条目:
*Option: Env9
{
*InsertBlock: =EnvelopeDefaults
}