Структура DEVMODE

DEVMODE структура має такий вигляд:

typedef _devicemode типу struct {nbsp;   / * dvmd * /
    TCHAR dmDevice&Name [32];
    СЛОВО dmSpecVersion;
    СЛОВО dmDriverVersion;
    СЛОВО dmSize;
    СЛОВО dmDriverExtra;
    DWORD dmFields;
    короткий dmOrientation;
    короткий dmPaperSize;
    короткий dmPaperLength;
    короткий dmPaperWidth;
    короткий dmScale;
    короткий dmCopies;
    короткий dmDefaultSource;
    короткий dmPrintQuality;
    короткий dmColor;
    короткий dmDuplex;
    короткий dmYResolution;
    короткий dmTTOption;
    короткий dmCollate;
    TCHAR dmFormName [32];
    СЛОВО dmUnusedPadding;
    USHORT dmBitsPerPel;
    DWORD dmPelsWidth;
    DWORD dmPelsHeight;
    DWORD dmDisplayFlags;
    DWORD dmDisplayFrequency;
} DEVMODE

Структури даних DEVMODE містить інформацію про пристрій ініціалізації та навколишнього середовища принтера.

Члени

dmDeviceName

Визначає ім'я пристрою, драйвер підтримує; Наприклад, PCL/HP LaserJet за PCL/HP LaserJet ®. Цей рядок є унікальною серед драйвери пристроїв.

dmSpecVersion

Вказує номер версії специфікації ініціалізації даних, на якому базується на структурі.

dmDriverVersion

Вказує номер версії драйвера принтера, присвоєний розробник драйвера принтера.

dmSize

Задає розмір, байт, DEVMODE структури, за винятком dmDriverData (конкретного пристрою) член. Якщо застосунок маніпулює тільки драйвер незалежна частину даних, він може використовувати цей компонент, щоб визначити довжину структури без необхідності для різних версій.

dmDriverExtra

Містить кількість байтів приватні дані драйвера, що дотримуються цієї структури. Якщо драйвер пристрою використовує інформацію конкретного пристрою, встановіть цей компонент до нуля.

dmFields

Визначає, що інші члени у структурі DEVMODE ініціалізовано. Біт 0 (визначається як DM_ORIENTATION), що відповідає dmOrientation; біт 1 (визначається як DM_PAPERSIZE) визначає dmPaperSizeі так далі. Драйвер принтера підтримує лише тих членів, які підходять для принтера технології.

dmOrientation

Вибір орієнтації паперу. Цей компонент може бути або DMORIENT_PORTRAIT (1) або DMORIENT_LANDSCAPE (2).

dmPaperSize

Установка розміру паперу для друку на. Цей компонент можна встановити на нуль Якщо довжина і ширина паперу обидва набір членами dmPaperLength і dmPaperWidth . В іншому випадку, член dmPaperSize можуть бути встановлені до одного з таких попередньо визначених значень:

dmPaperLength

Скасовує довжина папери, визначених dmPaperSize член, або персоналізований формат паперу або пристрої, такі як матричних принтерах, який можна надрукувати на сторінці довільної довжини. Ці значення, поряд з всіх інших значень у цій структурі, які визначити фізичні довжини, є в десятих міліметра.

dmPaperWidth

Скасовує ширина паперу, визначених член dmPaperSize.

dmScale

Визначає фактор, який друкованого виводу є масштабувати. Розмір видимої сторінки масштабується від розміру фізичної сторінки на коефіцієнт dmScale/100. Наприклад, листа розміром сторінки з dmScale значення 50 будуть містити стільки даних як сторінки з 17 по 22 дюйми тому що вихідний текст і малюнки буде половину своїх оригінальних висоти та ширини.

dmCopies

Вибирає кількість примірників, якщо пристрій підтримує багатосторінкового копії.

dmDefaultSource

Захищені; повинні бути нульовим.

dmPrintQuality

Визначає роздільну здатність принтера. Існують чотири попередньо апаратно незалежні значення:

dmColor

Переключення між кольору і монохромний на кольорових принтерах. Нижче наведено можливі значення:

dmDuplex

Виділяє дуплексний або двосторонній друк для принтерів двосторонній друк. Нижче наведено можливі значення:

dmYResolution

Визначає y резолюції, в точках на дюйм, принтера. Якщо принтер ініціалізує член цього, член dmPrintQuality визначає x резолюції, в точках на дюйм, принтера.

dmTTOption

Визначає, як шрифти TrueType ® повинні друкуватися. Цей компонент може бути одне з таких значень:

dmCollate

Визначає, чи копіями повинні використовуватися під час друку кількох копій. Використання DMCOLLATE_FALSE забезпечує швидше, ефективніше виводу, оскільки дані надсилаються на принтері сторінки тільки один раз, незалежно від того, скільки копій обов'язкові для заповнення. Принтер сказав, щоб просто надрукувати сторінку знову. Цей компонент може бути одне з таких значень:

dmFormName

Визначає ім'я форми для використання; Наприклад, буква або юридична. Повний набір імена можуть бути отримані через вікна EnumForms функції.

dmUnusedPadding

Використовується для вирівнювання структури на межу DWORD . Це не повинно використовуватися або посилання. Його ім'я і використання зарезервовано і можна змінити в майбутньому релізи.

dmBitsPerPel

Задає бітів на піксель роздільну здатність кольору на пристрої відображення. Наприклад: 4 біти для 16 кольорів, 8 бітів, 256 кольорів або 16 біт для 65536 кольорів.

dmPelsWidth

Визначає товщину у пікселях, поверхні пристрій видимий.

dmPelsHeight

Визначає висоту, у пікселях, поверхні пристрій видимий.

dmDisplayFlags

Визначає режим відображення пристрою. Нижче наведено дійсний прапори:

dmDisplayFrequency

Визначає частоту, в Гц (циклах на секунду), пристрою відображення в даному режимі.

Коментарі

Драйвер пристрою особисті дані будуть стежити членів dmDisplayMode . Кількість байтів особистих даних, визначено член dmDriverExtra.

Дивіться також CDC::ResetDC, CPrintDialog::GetDevMode

Index