Udostępnij przez


Zmienne standardowe

Important

Nowoczesna platforma drukowania jest preferowanym sposobem komunikacji z drukarkami w systemie Windows. Zalecamy używanie sterownika klasy skrzynki odbiorczej IPP firmy Microsoft wraz z aplikacjami do obsługi drukowania (PSA), aby dostosować środowisko drukowania w systemie Windows 10 i 11 na potrzeby opracowywania urządzeń drukarki.

Aby uzyskać więcej informacji, zobacz Print Support App v1 and v2 design guide (Przewodnik projektowania aplikacji do obsługi wydruku w wersji 1 i 2).

Język GPD definiuje zestaw zmiennych standardowych, do których można odwoływać się w ciągach poleceń, przy użyciu formatu ciągu polecenia. Sterownik Unidrv przypisuje wartości do tych zmiennych. Z punktu widzenia pliku GPD zmienne są tylko do odczytu.

Wszystkie zmienne standardowe są przechowywane jako liczby całkowite DWORD.

Następujący wpis polecenia drukarki określa ciąg polecenia, który jest wysyłany do HP LaserJet 4P, gdy blok danych rastrowych jest gotowy:

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

Poniższa tabela zawiera wszystkie zmienne standardowe w kolejności alfabetycznej.

Nazwa zmiennej standardowej Value Comments
BlueValue Niebieski składnik bieżącego koloru. Prawidłowe do użycia w ciągach poleceń CmdDefinePaletteEntry (zobacz GreenValue, RedValue).
CurrentFontID Numer identyfikacyjny bieżącej pobranej czcionki soft. Jest prawidłowe, jeśli bieżące zadanie drukowania zawiera pobrane czcionki miękkie.
CurrentPaletteIndex Bieżący indeks do palety kolorów. Prawidłowe do użycia w ciągach poleceń CmdSelectPaletteEntry (zobacz GreenValue, RedValue).
CursorOriginX Współrzędna X źródła kursora w jednostkach głównych. Prawidłowe za każdym razem, gdy zadanie drukowania jest w toku.
CursorOriginY Współrzędna Y źródła kursora w jednostkach głównych. Prawidłowe za każdym razem, gdy zadanie drukowania jest w toku.
DestX Współrzędna X miejsca docelowego kursora w jednostkach głównych względem źródła kursora. Poprawne do użycia w ciągach poleceń typu CmdXMoveAbsolute.
DestXRel Współrzędna X miejsca docelowego kursora w jednostkach podstawowych w odniesieniu do obecnego położenia kursora. Można używać w ciągach poleceń CmdXMoveRelLeft i CmdXMoveRelRight.
DestY Współrzędna Y miejsca docelowego kursora w jednostkach głównych względem źródła kursora. Prawidłowe do użycia w ciągach poleceń CmdYMoveAbsolute.
DestYRel Współrzędna Y miejsca docelowego kursora w jednostkach głównych w odniesieniu do bieżącego położenia kursora. Prawidłowy do użycia w komendach CmdYMoveRelUp i CmdYMoveRelDown.
FontBold Ustaw wartość na jedną, jeśli bieżąca czcionka jest pogrubiona lub zero w przeciwnym razie. Prawidłowy, gdy określono czcionkę.
FontHeight Wysokość bieżącej czcionki w jednostkach głównych. Prawidłowy, gdy określono czcionkę.
FontItalic Ustaw wartość na jedną, jeśli bieżąca czcionka jest kursywa lub zero w przeciwnym razie. Prawidłowy, gdy określono czcionkę.
FontMaxWidth Ustaw maksymalny przyrost znaków wszystkich glifów w czcionce. Prawidłowy, gdy określono czcionkę.
FontStrikeThru Ustaw wartość na 1, jeśli opcja przekreślenia jest włączona dla bieżącej czcionki, lub na 0 w przeciwnym przypadku. Prawidłowy, gdy określono czcionkę.
FontUnderLine Ustaw wartość na jedną, jeśli bieżąca czcionka jest podkreślona lub zero w przeciwnym razie. Prawidłowy, gdy określono czcionkę.
FontWidth Szerokość bieżącej czcionki w jednostkach głównych. Prawidłowy, gdy określono czcionkę.
GraphicsXRes Bieżąca rozdzielczość pozioma grafiki w dpi. Prawidłowe za każdym razem, gdy zadanie drukowania jest w toku.
GraphicsYRes Bieżąca rozdzielczość pionowa grafiki w dpi. Prawidłowe za każdym razem, gdy zadanie drukowania jest w toku.
GrayPercentage Szary poziom (wartość procentowa) do użycia na potrzeby szarego wypełnienia. Ważne do użycia w łańcuchach poleceń CmdRectGrayFill.
GreenValue Zielony składnik bieżącego koloru. Prawidłowe do użycia w ciągach poleceń CmdDefinePaletteEntry (zobacz BlueValue, RedValue).
LinefeedSpacing Ilość miejsca w pionie w jednostkach głównych reprezentujących kanał liniowy. Ważne do użycia w ciągach poleceń CmdSetLineSpacing.
NextFontID Numer identyfikacyjny następnej miękkiej czcionki do pobrania. Prawidłowe do użycia w ciągach poleceń CmdSetFontID.
NextGlyph Dwu bajtowy kod następnego glifu do pobrania. Ważne do użycia w ciągach poleceń CmdSetCharCode.
NumOfCopies Liczba kopii żądanych przez użytkownika. Prawidłowe za każdym razem, gdy zadanie drukowania jest w toku.
NumOfDataBytes Liczba bajtów danych rasterowych gotowych do transferu. Prawidłowe do użycia w dowolnym ciągu polecenia CmdSendXXXData. Jeśli dane są kompresowane, wartość jest liczbą bajtów po kompresji.
PageNumber Numer strony, która jest obecnie drukowana. Należy pamiętać, że niekoniecznie odpowiada to numerowi strony aplikacji, ale zamiast tego wywołano metodę DrvSendPage . Ta wartość jest inicjowana przez narzędzie DrvStartDoc i zwiększana przez narzędzie DrvSendPage. Jeśli na przykład wybrano N-up = 4, numer strony jest zwiększany do 2 tylko wtedy, gdy jest drukowana piąta strona dokumentu. W innym przykładzie, jeśli dokument jest drukowany w odwrotnej kolejności (z powrotem do przodu), zmienna standardowa PageNumber nadal zgłasza pierwszą stronę do wydrukowania jako strona 1, mimo że jest to ostatnia strona dokumentu. To zachowanie jest wymagane do prawidłowego obsługi funkcji automatycznego dupleksowania. Producenta OEM powinno używać tylko pageNumber , aby określić, czy bieżąca strona jest stroną przednią, czy z tyłu. Prawidłowe za każdym razem, gdy zadanie drukowania jest w toku.
PaletteIndexToProgram Zindeksuj w palecie kolorów następny wpis do programu. Odpowiednie do użycia w ciągach poleceń CmdDefinePaletteEntry. (Zobacz również RedValue, GreenValue, BlueValue, CurrentPaletteIndex).
PatternBrushID Numer identyfikacyjny pobranego pędzla wzoru. Ważne do zastosowania z ciągami poleceń CmdDownloadPattern i CmdSelectPattern.
PatternBrushSize Rozmiar w bajtach aktualnego pędzla wzorcowego. Właściwe do użycia z ciągiem poleceń CmdDownloadPattern.
PatternBrushType Typ bieżącego pędzla z wzorem. Wartość może być następująca: 2: Wzorzec cieniowania, 3: Wzorzec krzyżowy, 4: Wzorzec zdefiniowany przez użytkownika. Ważne do zastosowania z ciągami poleceń CmdDownloadPattern i CmdSelectPattern.
PhysPaperLength Długość w trybie portretowym, w jednostkach y-master, papieru aktualnie używanego. Prawidłowe za każdym razem, gdy zadanie drukowania jest w toku.
PhysPaperWidth Szerokość w trybie pionowym, w jednostkach podstawowych, papieru używanego obecnie. Prawidłowe za każdym razem, gdy zadanie drukowania jest w toku.
PrintDirInCCDegrees Ilość obrotu mierzona w kierunku odwrotnym, w stopniach. Prawidłowy, gdy sterownik wysyła ciąg polecenia CmdSetSimpleRotation lub CmdSetAnyRotation.
RasterDataHeightInPixels Wysokość w pikselach obrazu reprezentowanego przez bieżące dane. Można używać w dowolnym ciągu polecenia CmdSendXXXData oraz w ciągach poleceń CmdSetSrcBmpHeight. Kompresja nie modyfikuje tej wartości.
RasterDataWidthInBytes Liczba bajtów zawartych w wierszu skanowania. Możliwe do użycia w dowolnym ciągu polecenia CmdSendXXXData oraz w ciągach poleceń CmdSetSrcBmpWidth. Kompresja nie modyfikuje tej wartości.
RectXSize Szerokość prostokąta w jednostkach x-master. Prawidłowe do użycia w ciągach poleceń CmdSetRectWidth.
RectYSize Długość prostokąta w jednostkach nadrzędnych y. Można używać w ciągach poleceń CmdSetRectHeight.
RedValue Czerwony składnik bieżącego koloru. Prawidłowe do użycia w ciągach poleceń CmdDefinePaletteEntry (zobacz GreenValue, BlueValue).
TextXRes Bieżąca rozdzielczość pozioma tekstu w dpi. Prawidłowe za każdym razem, gdy zadanie drukowania jest w toku.
TextYRes Bieżąca rozdzielczość pionowa tekstu w dpi. Prawidłowe za każdym razem, gdy zadanie drukowania jest w toku.