Struktury DEVMODE

Struktura DEVMODE ma następującą postać:

element TypeDef struct _devicemode {nbsp;   / * dvmd * /
    TCHAR dmDevice&Name [32];
    Program WORD dmSpecVersion;
    Program WORD dmDriverVersion;
    Program WORD dmSize;
    Program WORD dmDriverExtra;
    DWORD dmFields;
    krótkie dmOrientation;
    krótkie dmPaperSize;
    krótkie dmPaperLength;
    krótkie dmPaperWidth;
    krótkie dmScale;
    krótkie dmCopies;
    krótkie dmDefaultSource;
    krótkie dmPrintQuality;
    krótkie dmColor;
    krótkie dmDuplex;
    krótkie dmYResolution;
    krótkie dmTTOption;
    krótkie dmCollate;
    TCHAR dmFormName [32];
    Program WORD dmUnusedPadding;
    USHORT dmBitsPerPel;
    DWORD dmPelsWidth;
    DWORD dmPelsHeight;
    DWORD dmDisplayFlags;
    DWORD dmDisplayFrequency;
} DEVMODE

Struktura danych DEVMODE zawiera informacje na temat urządzenia inicjujące i środowiska drukarki.

Członkowie

dmDeviceName

Określa nazwę urządzenia sterownik obsługuje; na przykład PCL/HP LaserJet z PCL/HP LaserJet ®. Ten ciąg jest unikatowa wśród sterowników urządzeń.

dmSpecVersion

Określa numer wersji specyfikacji danych inicjowania, na której oparty jest struktura.

dmDriverVersion

Określa numer wersji sterownika drukarki przypisany przez dewelopera sterownika drukarki.

dmSize

Określa rozmiar, w bajtach, struktury DEVMODE , z wyjątkiem dmDriverData dotyczącego (specyficzne dla urządzenia) . Jeżeli aplikacja operuje jedynie część zależne od sterownika danych, można użyć tego członka do określenia długości struktury bez konieczności pod uwagę różnych wersji.

dmDriverExtra

Zawiera liczbę bajtów prywatnych danych sterownik, który za strukturą DEVMODE. Jeśli sterownik urządzenia nie używa informacji specyficznych dla urządzenia, ustawić tego członka do zera.

dmFields

Określa, który z pozostałych członków w strukturze DEVMODE zostały zainicjowane. Bit 0 (zdefiniowanego jako DM_ORIENTATION) odpowiada dmOrientation; bit 1 (zdefiniowanego jako DM_PAPERSIZE) określa, dmPaperSizei tak dalej. Sterownik drukarki obsługuje tylko te elementy członkowskie, które są odpowiednie dla technologii drukarki.

dmOrientation

Wybiera orientację papieru. Ten element może być DMORIENT_PORTRAIT (1) lub DMORIENT_LANDSCAPE (2).

dmPaperSize

Wybiera rozmiar papieru do drukowania. Członek ten można ustawić na zero jeśli długość i szerokość papieru są zarówno zestaw przez dmPaperLength i dmPaperWidth . W przeciwnym razie członek dmPaperSize można ustawić do jednego z następujących wstępnie zdefiniowanych wartości:

dmPaperLength

Zastępuje długość papieru określony przez członka dmPaperSize , niestandardowych rozmiarów papieru lub urządzenia takie jak drukarki mozaikowe, które można wydrukować na stronie o dowolnej długości. Wartości te, wraz z wszystkich innych wartości w tej struktury określające fizycznymi długość, są w dziesiątych częściach milimetr.

dmPaperWidth

Zastępuje szerokość papieru określony przez członka dmPaperSize.

dmScale

Określa współczynnik, przez który wydruku ma być skalowany. Rozmiar strony widoczna jest skalowany od wielkości fizycznej strony przez współczynnik dmScale/100. Na przykład stronę o rozmiarze letter o wartości dmScale 50 zawiera tyle danych jako strona 17 na 22 cale ponieważ wyjściowy tekst i grafika będzie połowa ich oryginalnej wysokości i szerokości.

dmCopies

Wybiera liczbę kopii drukowanych, jeśli urządzenie obsługuje wielu kopii strony.

dmDefaultSource

Zarezerwowane; musi mieć wartość zero.

dmPrintQuality

Określa rozdzielczość drukarki. Istnieją cztery wstępnie zdefiniowanych wartości niezależny od urządzenia:

dmColor

Przełącza między kolorów i czarno-białych na drukarek kolorowych. Poniżej przedstawiono możliwe wartości:

dmDuplex

Wybiera drukowanie dwustronne lub dwustronnie dla drukarek mogących drukowania dwustronnego. Poniżej przedstawiono możliwe wartości:

dmYResolution

Określa y rozdzielczość w punktach na cal, drukarki. Jeżeli drukarka inicjuje ten element członkowski, członek dmPrintQuality określa x rozdzielczość w punktach na cal, drukarki.

dmTTOption

Określa, w jaki sposób powinny być drukowane czcionki TrueType ®. Ten członek może mieć jedną z następujących wartości:

dmCollate

Określa, czy sortowanie powinny być używane podczas drukowania wielu kopii. Przy użyciu DMCOLLATE_FALSE zapewnia szybsze, bardziej efektywne wyjścia, ponieważ dane są przesyłane do drukarki stronicowej tylko jeden raz, niezależnie od tego, ile kopii są wymagane. Drukarka jest powiedział po prostu wydrukować stronę ponownie. Ten element może być zostać, jedna z następujących wartości:

dmFormName

Określa nazwę formularza do użytku; na przykład Letter i Legal. Kompletny zestaw nazw mogą być pobierane za pośrednictwem systemu Windows EnumForms funkcji.

dmUnusedPadding

Używane do wyrównywania struktury do granicy DWORD . Nie nazwy to być wykorzystywane lub odwołania. Jego nazwa i obciążenie jest zarezerwowana i można zmienić w przyszłych wydaniach.

dmBitsPerPel

Określa w bitach na piksel rozdzielczooć kolorów urządzenia wyświetlającego. Na przykład: 4 bity na 16 kolorów, 8 bitów na 256 kolorów lub 16 bitów do 65 536 kolorów.

dmPelsWidth

Określa szerokość w pikselach, widocznej powierzchni urządzenia.

dmPelsHeight

Określa wysokość w pikselach, widocznej powierzchni urządzenia.

dmDisplayFlags

Określa tryb wyświetlania urządzenia. Poniżej przedstawiono ważne flagi:

dmDisplayFrequency

Określa częstotliwość, w Hz (liczbę cykli na sekundę), urządzenia wyświetlającego w okreolonym trybie.

Komentarze

Sterownik urządzenia prywatnych danych nastąpi członka dmDisplayMode . Liczba bajtów danych prywatnych jest określona przez członka dmDriverExtra.

Zobacz też CDC::ResetDC, CPrintDialog::GetDevMode

Index