次の方法で共有


標準変数

重要

Windows でプリンターとの通信手段として推奨されるのは、最新の印刷プラットフォームです。 プリンターデバイス開発におけるWindows 10および11での印刷体験をカスタマイズするために、MicrosoftのIPPインボックスクラスドライバーとPrint Support Apps (PSA)の使用を推奨します。

詳細については、最新の印刷プラットフォームに関する記事および「印刷サポート アプリの設計ガイド」を参照してください 。

GPD 言語は、コマンド文字列形式を使用して、コマンド文字列内で参照できる標準変数のセットを定義します。 Unidrv ドライバーは、これらの変数に値を割り当てます。 GPD ファイルの観点からは、変数は読み取り専用です。

すべての標準変数は DWORD 整数として格納されます。

次のプリンター コマンドエントリは、ラスター データのブロックの準備ができたときに HP LaserJet 4P に送信されるコマンド文字列を指定するものです。

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

次の表に、すべての標準変数をアルファベット順に示します。

標準変数名 Value Comments
BlueValue 現在の色の青成分。 CmdDefinePaletteEntry コマンド文字列で使用可能 (GreenValueRedValueを参照)。
CurrentFontID 現在ダウンロードされているソフト フォントの識別番号。 現在の印刷ジョブにダウンロードしたソフト フォントが含まれている場合に使用可能。
CurrentPaletteIndex カラー パレットの現在のインデックス。 CmdSelectPaletteEntry コマンド文字列で使用可能 (GreenValueRedValueを参照)。
CursorOriginX カーソルの原点の X 座標 (マスター 単位)。 印刷ジョブが進行中の場合は常に有効。
CursorOriginY カーソルの原点の Y 座標 (マスター 単位)。 印刷ジョブが進行中の場合は常に有効。
DestX カーソルの原点を基準とした、カーソルの移動先の X 座標 (マスター 単位)。 CmdXMoveAbsolute コマンド文字列で使用可能。
DestXRel 現在のカーソル位置を基準とした、カーソルの移動先の X 座標 (マスター 単位)。 CmdXMoveRelLeft および CmdXMoveRelRight コマンド文字列で使用可能。
DestY カーソルの原点を基準とした、カーソルの移動先の Y 座標 (マスター 単位)。 CmdYMoveAbsolute コマンド文字列で使用可能。
DestYRel 現在のカーソル位置を基準とした、カーソルの移動先の Y 座標 (マスター 単位)。 CmdYMoveRelUp および CmdYMoveRelDown コマンド文字列で使用可能。
FontBold 現在のフォントが太字の場合は 1、それ以外の場合は 0 に設定。 フォントが指定されている場合に有効。
FontHeight 現在のフォントの高さ (マスター 単位)。 フォントが指定されている場合に有効。
FontItalic 現在のフォントが斜体の場合は 1、それ以外の場合は 0 に設定。 フォントが指定されている場合に有効。
FontMaxWidth フォント内のすべての Glyphs の最大文字数に設定します。 フォントが指定されている場合に有効。
FontStrikeThru 現在のフォントに取り消し線がある場合は 1 に、ない場合は 0 に設定。 フォントが指定されている場合に有効。
FontUnderLine 現在のフォントに下線が付けられている場合は 1、それ以外の場合は 0 に設定。 フォントが指定されている場合に有効。
FontWidth 現在のフォントの幅 (マスター単位)。 フォントが指定されている場合に有効。
GraphicsXRes 画像の現在の水平方向の解像度 (DPI)。 印刷ジョブが進行中の場合は常に有効。
GraphicsYRes 画像の現在の垂直方向の解像度 (DPI)。 印刷ジョブが進行中の場合は常に有効。
GrayPercentage 灰色の塗りつぶしに使用する灰色の濃度 (%)。 CmdRectGrayFill コマンド文字列で使用可能。
GreenValue 現在の色の緑成分。 CmdDefinePaletteEntry コマンド文字列で使用可能 (BlueValueRedValueを参照)。
LinefeedSpacing ラインフィードを表す垂直方向のスペースの量 (マスター単位)。 CmdSetLineSpacing コマンド文字列で使用可能。
NextFontID ダウンロードする次のソフト フォントの識別番号。 CmdSetFontID コマンド文字列で使用可能。
NextGlyph 次にダウンロードするグリフの 2 バイト コード。 CmdSetCharCode コマンド文字列で使用可能。
NumOfCopies ユーザーが要求したコピーの数。 印刷ジョブが進行中の場合は常に有効。
NumOfDataBytes 転送可能なラスター データのバイト数。 CmdSendXXXData コマンド文字列で使用可能。 データが圧縮されている場合、値は圧縮後のバイト数です。
PageNumber 現在印刷中のページの番号。 これは必ずしもアプリケーションのページ番号に対応しているわけではなく、DrvSendPage が呼び出された回数に対応しています。 この値は DrvStartDoc によって初期化され、DrvSendPage によってインクリメントされます。 例えば、N-up = 4 が選択されている場合、 PageNumber はドキュメントの 5 ページ目が印刷されている場合に 2 にインクリメントされます。 別の例として、文書が逆の順序 (後ろから前) で印刷される場合、PageNumber標準変数は、印刷対象が文書の最後のページであっても、印刷される最初のページをページ 1 として報告します。 この動作は、自動両面印刷機能を適切にサポートするために必要です。 OEM は、PageNumber を使用して、現在のページが表面か裏面かを判断する必要があります。 印刷ジョブが進行中の場合は常に有効。
PaletteIndexToProgram プログラムへの次のエントリのカラー パレットにインデックスを付けます。 CmdDefinePaletteEntry コマンド文字列で使用可能。 (併せて RedValueGreenValueBlueValueCurrentPaletteIndex を参照)。
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 コマンド文字列で使用可能 (GreenValueBlueValueを参照)。
TextXRes 現在の文字の水平方向の解像度 (DPI)。 印刷ジョブが進行中の場合は常に有効。
TextYRes 現在の文字の垂直方向の解像度 (DPI)。 印刷ジョブが進行中の場合は常に有効。