共用方式為


標準變數

重要

新式列印平臺是 Windows 與印表機通訊的慣用方法。 我們建議您使用Microsoft的 IPP 收件匣類別驅動程式,以及列印支援應用程式 (PSA),自定義 Windows 10 和 11 中的列印體驗,以進行印表機裝置開發。

如需詳細資訊,請參閱 新式列印平臺列印支援應用程式設計指南

GPD 語言會使用命令字串格式定義一組可在命令字串內參考的標準變數。 Unidrv 驅動程式會將值指派給這些變數。 從 GPD 檔案的觀點來看,變數是唯讀的。

所有標準變數都會儲存為 DWORD 整數。

下列 印表機命令 專案會指定當點陣資料區塊就緒時傳送至 HP LaserJet 4P 的命令字串:

*Command: CmdSendBlockData: "<1B>*b" %d{NumOfDataBytes} "W"

下表以字母順序包含所有標準變數。

標準變數名稱 註解
BlueValue 目前色彩的藍色元件。 適用於 CmdDefinePaletteEntry 命令字串的有效用法(請參閱 GreenValue、RedValue)。
CurrentFontID 目前下載之軟字型的標識碼。 如果目前的列印作業包含已下載的軟字型,則有效。
CurrentPaletteIndex 調色盤中的目前索引。 適用於 CmdSelectPaletteEntry 命令字串中的有效用法(請參閱 GreenValueRedValue)。
CursorOriginX 數據指標原點的 X 座標,以主要單位表示。 每當列印作業正在進行時有效。
CursorOriginY 數據指標原點的 Y 座標,以主要單位表示。 每當列印作業正在進行時有效。
DestX 相對於數據指標原點的主要單位,數據指標目的地的 X 座標。 適用於 CmdXMoveAbsolute 命令字串。
DestXRel 相對於目前數據指標位置,以主要單位表示數據指標目的地的 X 座標。 適用於 CmdXMoveRelLeft 和 CmdXMoveRelRight 命令字串。
Desty 相對於數據指標原點的主要單位,數據指標目的地的 Y 座標。 適用於 CmdYMoveAbsolute 命令字串。
DestyRel 相對於目前數據指標位置,以主要單位表示數據指標目的地的 Y 座標。 適用於 CmdYMoveRelUp 和 CmdYMoveRelDown 命令字串。
FontBold 如果目前的字型為粗體,則設定為 1,否則為零。 指定字型時有效。
FontHeight 高度,以目前字型的主要單位表示。 指定字型時有效。
FontItalic 如果目前的字型為斜體,則設定為 1,否則為零。 指定字型時有效。
FontMaxWidth 設定為字型中所有字元的最大字元增量。 指定字型時有效。
FontStrikeThru 如果啟用目前字型的刪除線,則設定為 1,否則為零。 指定字型時有效。
FontUnderLine 如果目前的字型加上底線,則設定為一個,否則為零。 指定字型時有效。
FontWidth 寬度,以目前字型的主要單位表示。 指定字型時有效。
GraphicsXRes 目前圖形的水平解析度,以 DPI 為單位。 每當列印作業正在進行時有效。
GraphicsYRes 目前圖形的垂直解析度,以 DPI 為單位。 每當列印作業正在進行時有效。
GrayPercentage 用於灰色填滿的灰色層級(百分比)。 適用於 CmdRectGrayFill 命令字串。
GreenValue 目前色彩的綠色元件。 適用於 CmdDefinePaletteEntry 命令字串中的有效用法(請參閱 BlueValueRedValue)。
LinefeedSpacing 以主要單位表示換行的垂直空間量。 適用於 CmdSetLineSpacing 命令字串。
NextFontID 要下載之下一個軟字型的標識碼。 適用於 CmdSetFontID 命令字串。
NextGlyph 要下載之下一個圖像的雙位元組程序代碼。 適用於 CmdSetCharCode 命令字串。
NumOfCopies 使用者要求的複本數目。 每當列印作業正在進行時有效。
NumOfDataBytes 準備傳輸的點陣數據位元組數目。 適用於任何 CmdSendXXXData 命令字串。 如果數據已壓縮,此值就是壓縮后的位元元組數目。
PageNumber 目前正在列印的頁面數目。 請注意,這不一定對應至應用程式的頁碼,而是呼叫 DrvSendPage 的次數。 此值是由DrvStartDoc初始化,並由DrvSendPage遞增 例如,如果選取 N-up = 4, 則只有在列印檔的第五頁時,PageNumber 才會遞增至 2。 另一個範例是,如果檔以反向順序列印(回到前方), PageNumber 標準變數仍會報告要列印為第 1 頁的第一頁,即使這是文件的最後一頁也一樣。 需要此行為,才能正確支持自動雙工功能。 OEM 應該只使用 PageNumber 來判斷目前的頁面是正面還是後端。 每當列印作業正在進行時有效。
PaletteIndexToProgram 索引至程式下一個專案的調色盤。 適用於 CmdDefinePaletteEntry 命令字串。 (另請參閱RedValue、GreenValue、BlueValueCurrentPaletteIndex)。
PatternBrushID 已下載模式筆刷的標識碼。 適用於 CmdDownloadPattern 和 CmdSelectPattern 命令字串。
PatternBrushSize 目前模式筆刷的大小,以位元組為單位。 適用於 CmdDownloadPattern 命令字串。
PatternBrushType 目前模式筆刷的類型。 值可以是:2:底紋模式 3:交叉影線模式 4:用戶定義模式。 適用於 CmdDownloadPattern 和 CmdSelectPattern 命令字串。
PhysPaperLength 目前使用中紙張的直向模式長度,以 Y 主要單位表示。 每當列印作業正在進行時有效。
PhysPaperWidth 目前使用之紙張的主圖形單位的直向模式寬度。 每當列印作業正在進行時有效。
PrintDirInCCDegrees 以度為單位的旋轉量,以逆時針為單位。 當驅動程式傳送 CmdSetSimpleRotation 或 CmdSetAnyRotation 命令字串時有效。
RasterDataHeightInPixels 目前數據所代表影像的高度,以像素為單位。 適用於任何 CmdSendXXXData 命令字串,以及 CmdSetSrcBmpHeight 命令字串。 壓縮不會修改此值。
RasterDataWidthInBytes 掃描行中包含的位元組數目。 適用於任何 CmdSendXXXData 命令字串,以及 CmdSetSrcBmpWidth 命令字串。 壓縮不會修改此值。
RectXSize 矩形寬度,以 x 主要單位為單位。 適用於 CmdSetRectWidth 命令字串。
RectYSize 矩形長度,以 Y 主要單位為單位。 適用於 CmdSetRectHeight 命令字串。
RedValue 目前色彩的紅色元件。 適用於 CmdDefinePaletteEntry 命令字串的有效用法(請參閱 GreenValue、BlueValue)。
TextXRes 目前文字的水平解析度,以 DPI 為單位。 每當列印作業正在進行時有效。
TextYRes 目前文字的垂直解析度,以 DPI 為單位。 每當列印作業正在進行時有效。