Określanie orientacji papieru
Ważny
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 przewodnik projektowania aplikacji wspierającej drukowanie .
Istnieją trzy opcje standardowe związane z funkcją standardową orientacji : są to PORTRET, LANDSCAPE_CC90 i LANDSCAPE_CC270. O ile nie określono inaczej, domyślna orientacja to PORTRAIT. Użycie tej opcji jest proste i nie zostało omówione w tym temacie. Równowaga tego tematu skupia się na dwóch opcjach krajobrazu.
LANDSCAPE_CC90 i LANDSCAPE_CC270
Opcje LANDSCAPE_CC90 i LANDSCAPE_CC270 funkcji Orientacja wskazują stopień obrotu, jaki należy zastosować do tekstu i grafiki w trybie portretowym, aby przekonwertować je na tryb krajobrazowy. Opcja LANDSCAPE_CC90 obraca tekst i grafikę o 90 stopni przeciwnie do ruchu wskazówek zegara. Opcja LANDSCAPE_CC270 obraca tekst i grafikę o 270 stopni przeciwnie do ruchu wskazówek zegara, co odpowiada rotacji o 90 stopni zgodnie z ruchem wskazówek zegara. W przypadku obu opcji Unidrv obsługuje zadania polegające na obróceniu tekstu i grafiki o określony kąt, a następnie odpowiednio je przemieszcza, aby pasowały do nowej orientacji.
Wiele drukarek obsługuje zarówno tryb pionowy, jak i tryb poziomy, podczas gdy pozostałe drukarki, zazwyczaj z mniejszą liczbą funkcji, obsługują tylko tryb pionowy. Każdy z trybów ma własny układ współrzędnych: w trybie pionowym początek znajduje się w lewym górnym rogu (x zwiększa się w prawo, a y zwiększa się w dół); w trybie poziomym początek znajduje się w lewym dolnym rogu (x zwiększa się w górę, a y zwiększa się w prawo).
Drukarki, które nie obsługują trybu poziomego, mogą nadal drukować dokumenty w tej orientacji. W przypadku tego typu drukarki należy określić opcję LANDSCAPE_CC270 w pliku GPD drukarki. (Jeśli określisz opcję LANDSCAPE_CC90 dla tych drukarek, tekst i grafika będą zniekształcone po wydrukowaniu.) W ramach tej opcji Unidrv przedstawia przekształcony tekst i grafikę do drukarki, używając współrzędnych względem lewego górnego rogu drukarki jako punktu początkowego.
W przypadku drukarki obsługującej tryb poziomy oraz tryb pionowy należy określić opcję LANDSCAPE_CC90 w pliku GPD. W ramach tej opcji Unidrv musi zostać skierowany do wydania polecenia zmieniającego orientację na poziomą do drukarki, co powoduje przełączenie się z systemu współrzędnych trybu pionowego do układu współrzędnych trybu poziomego (z początkiem w lewym dolnym rogu). Unidrv następnie przedstawia przekształcony tekst i grafikę do drukarki ze współrzędnymi względem źródła drukarki w lewym dolnym rogu.
Jednak drukarka obsługująca tryb poziomy (dla którego zwykle jest używana opcja LANDSCAPE_CC90), może nadal działać z opcją LANDSCAPE_CC270. W ramach tej opcji Unidrv jest tak skonfigurowany, aby traktował drukarkę, jakby obsługiwała tylko tryb pionowy (czyli z tylko jednym układem współrzędnych, z początkiem w lewym górnym rogu). W związku z tym unidrv nie może być kierowany do wydawania polecenia w celu zmiany układów współrzędnych. Unidrv przedstawia przekształcony tekst i grafikę drukarce ze współrzędnymi względem tego początkowego punktu w górnym lewym rogu. Ponieważ Unidrv zakłada tę lokalizację źródła, do takiej drukarki nie powinno być wysyłane polecenie trybu poziomego, nawet jeśli użytkownik wybrał orientację poziomą na stronie właściwości drukarki. W poniższym przykładzie pliku GPD zwróć uwagę, że sekcja *Option: LANDSCAPE_CC270 zawiera polecenie umieszczające drukarkę w trybie portretowym (ORIENT_PORTRAIT_CMD), a nie polecenie umieszczające ją w trybie krajobrazowym.
*Feature: Orientation
{
*rcNameID: =ORIENTATION_DISPLAY
*DefaultOption: PORTRAIT
*Option: PORTRAIT
{
*rcNameID: =PORTRAIT_DISPLAY
*Command: CmdSelect
{
*Order: DOC_SETUP.60
*Cmd: =ORIENT_PORTRAIT_CMD
}
}
*Option: LANDSCAPE_CC270
{
*rcNameID: =LANDSCAPE_DISPLAY
*Command: CmdSelect
{
*Order: DOC_SETUP.60
*Cmd: =ORIENT_PORTRAIT_CMD
}
}
}
W systemie Windows 7 funkcja MxdcGetPDEVAdjustment ma nowe parametry rotacji poziomej. Aby uzyskać więcej informacji, zobacz MxdcXDCGetPDEVAdjustment.