Udostępnij przez


Atrybuty możliwości drukarki

Ważne

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).

Atrybuty możliwości drukarki to ogólne atrybuty drukowania , które określają takie cechy drukarki jak margines strony, rotacja i drukowanie tekstu, które mają wpływ na wszystkie rozmiary i orientacje papieru.

Nazwa atrybutu Parametr atrybutu Komentarze
Zużycie Pamięci LISTA stałych wskazujących typy danych przechowywanych w pamięci drukarki. Może to być jedna lub więcej z: CZCIONKI RASTER WEKTOR. Jeśli typ danych jest wyświetlany na liście, ale nie jest obsługiwany przez drukarkę, jest on ignorowany. Opcjonalny. Jeśli nie zostanie określony, wartość domyślna to LIST(FONT, RASTER, VECTOR). Aby uzyskać więcej informacji, zobacz Opis konfiguracji pamięci drukarki.
OEMCustomData Cytowany ciąg tekstowy, który ma zostać dostarczony do wtyczki renderowania, gdy wywołuje IPrintOemDriverUni::DrvGetGPDData. Wymagane, jeśli wtyczka renderowania wywołuje IPrintOemDriverUni::DrvGetGPDData. Interpretacja zawartości ciągu tekstowego jest określana przez wtyczkę renderowania. Ten atrybut jest przenośnym atrybutem globalnym; może zostać umieszczony na poziomie głównym (zobacz Atrybuty tylko na poziomie głównym), aby stwierdzić, że nie ma zależności od konfiguracji drukarki, lub może pojawić się w konstrukcjach Opcji lub Case, jeśli istnieje jakaś zależność.
OutputOrderReversed? TRUE lub FALSE, wskazując, czy dokumenty wielostronicowe są sortowane od ostatniej strony do pierwszej. Opcjonalny. Jeśli nie zostanie określona, wartość domyślna to FALSE. Symbol EXTERN_GLOBAL nie powinien być używany z elementem OutputOrderReversed?.
Ponownie wybierz czcionkę Lista stałych wskazujących operacje, po których unidrv musi ponownie wybrać bieżącą czcionkę. Może być jednym z następujących: AFTER_GRXDATA — po dowolnym poleceniu emisji danych rastrowych CmdSendXxxxData. AFTER_XMOVE — po dowolnych poleceniach kursora związanych z ruchem w osi X. AFTER_FF — po poleceniu CmdFF. Opcjonalny. Jeśli nie zostanie określony, aplikacja Unidrv nie wybierze ponownie czcionek.
ReverseBandOrderForEvenPages? PRAWDA lub FAŁSZ, wskazujące, czy odwrotne paskowanie jest włączone. Ten atrybut służy do obsługi drukarek z funkcją autoduplex; oznacza to, że drukarki, które są w stanie drukować po obu stronach arkusza papieru. Sekcja poniżej tej tabeli zawiera więcej informacji. Wartość domyślna tego atrybutu to FALSE. Ustawienie tego atrybutu na TRUE umożliwia odwróconą kolejność grupowania. Ten atrybut jest atrybutem globalnym, który można przenieść. Może zostać umieszczony na poziomie głównym (zobacz Atrybuty tylko na poziomie głównym), aby oznaczyć, że nie ma zależności od konfiguracji drukarki lub może występować w konstrukcjach Opcji lub Przypadków, jeśli istnieje pewna zależność.
RotateCoordinate? PRAWDA lub FAŁSZ wskazujący, czy drukarka obsługuje polecenia obracania układu współrzędnych w celu dopasowania do orientacji strony. Opcjonalny. Jeśli nie zostanie określona, wartość domyślna to FALSE. Jeśli TRUE, pozycje opcji dla funkcji Orientacja muszą określać polecenia drukarki. Nie można umieścić we wpisie Case.
RotateFont? PRAWDA lub FAŁSZ wskazujący, czy drukarka automatycznie obraca czcionki w celu dopasowania do orientacji strony. Opcjonalny. Jeśli nie zostanie określona, wartość domyślna to FALSE. Jeśli prawda, to RotateCoordinate? musi również być prawda. Nie można umieścić we wpisie Case.
ObróćRaster? PRAWDA lub FAŁSZ wskazujący, czy drukarka automatycznie obraca dane rastrowe w celu dopasowania do orientacji strony. Opcjonalny. Jeśli nie zostanie określona, wartość domyślna to FALSE. Jeśli TRUE, to RotateCoordinate? również musi być TRUE. Nie można umieścić we wpisie Case.
TextCaps Lista stałych wskazujących możliwości tekstu drukarki. Może składać się z co najmniej jednej flagi TC_xxx opisanej w artykule GetDeviceCaps. Opcjonalny. Jeśli nie zostanie określony, unidrv zakłada, że nie są obsługiwane żadne możliwości tekstowe.

Dodatkowe informacje o ReverseBandOrderForEvenPages?

Efektem ubocznym funkcjonalności autoduplex jest to, że dolna krawędź wydrukowanej strony jest wciągana z powrotem do drukarki, stając się górną krawędzią następnej strony. Aby zachować orientację drugiej strony względem pierwszej, obraz rastrowy drugiej strony musi zostać wysłany do drukarki w odwrotnej kolejności. Innymi słowy, jeśli drukarka wydrukowała przednią stronę, wysyłając najpierw górną linię skanowania, musi najpierw wydrukować linię skanowania dolnego z tyłu.

Jeśli funkcja ReverseBandOrderForEvenPages? jest ustawiona na TRUE i dupleksowanie jest włączone, Unidrv wylicza każde pasmo w odwrotnej kolejności dla stron parzystych (tył stron z numerami nieparzystymi). Wtyczka renderowania OEM musi buforować tylko jeden przedział danych przed wysłaniem ich do drukarki. Kolejność wierszy skanowania w każdym pasmie nie jest odwracana, więc wtyczka musi nadal obsługiwać to zadanie i musi również odwrócić kolejność bitów w każdym wierszu skanowania. Mimo że jest to dodatkowa praca dla wtyczki, zaletą jest to, że wtyczka nie musi buforować żadnych danych rasterowych i może natychmiast rozpocząć wysyłanie danych do drukarki.

Atrybut ReverseBandOrderForEvenPages jest oceniany tylko wtedy, gdy opcja dupleksu jest ustawiona na "Przerzuć na długą krawędź". Ten atrybut jest ignorowany, gdy dupleksowanie jest ustawione na "Przerzuć na krótką krawędź".

Zarówno wartość atrybutu ReverseBandOrderForEvenPages, jak i rotacja symulowana przez sterownik wpływają na sposób wyliczania pasków, co przedstawiono w poniższej tabeli. Kolejność wyliczenia pasm określona w kolumnie z wartością TRUE ma zastosowanie, gdy element ReverseBandOrderForEvenPages? ma wartość TRUE, a dupleks jest zaznaczony, a strona do wydrukowania jest drugą (lub odwrotną). W przeciwnym razie ma zastosowanie kolumna z nagłówkiem FALSE.

Rotacja symulowana przez sterownik PRAWDA i Strona parzysta FAŁSZ lub Strona nieparzysta
CCW_ROTATE90 SW_LTOR SW_RTOL
CCW_ROTATE270 SW_RTOL SW_LTOR
Brak rotacji SW_UP SW_DOWN

Legenda: SW_LTOR = od lewej do prawej, SW_RTOL = od prawej do lewej, SW_UP = od dołu do góry, SW_DOWN = od góry do dołu.

Wtyczka renderowania OEM może obsługiwać autoduplexing bez użycia atrybutu ReverseBandOrderForEvenPages? Wtyczka może to zrobić, buforując wszystkie dane dla całej strony i wysyłając je do drukarki, począwszy od dolnej linii skanowania. Ten wiersz skanowania i wszystkie inne na tej stronie muszą być wysyłane w odwrotnej kolejności.

Wtyczka renderowania OEM jest odpowiedzialna za odwrócenie kolejności bitów w każdej linii skanowania oraz odwrócenie kolejności linii skanowania w każdym paśmie podczas wysyłania danych do drukarki. Aby określić, kiedy należy to zrobić, można uzyskać wartość zmiennej standardowej PageNumber, wykonując wywołanie metody IPrintOemDriverUni::D rvGetStandardVariable przy użyciu SVI_PAGENUMBER indeksu. Jeśli numer strony jest nieparzysty, nie jest wymagane odwrócenie. Jeśli liczba jest parzysta i wybrany jest tryb dupleksu, konieczne jest odwracanie.