Функции, определенные библиотеками DLL графики принтера
Внимание
Современная платформа печати — это предпочтительный способ взаимодействия с принтерами Windows. Рекомендуется использовать драйвер класса "Входящие" Microsoft IPP вместе с приложениями поддержки печати (PSA), чтобы настроить возможности печати в Windows 10 и 11 для разработки устройств принтера.
Дополнительные сведения см. в статье "Современная платформа печати" и руководство по проектированию приложений поддержки печати.
Как и для всех графических драйверов, библиотеки DLL графики принтера отвечают за определение следующих функций DDI графики. После DrvEnableDriver начальная точка входа драйвера остальные функции перечислены в алфавитном порядке. Обратите внимание, что поскольку GDI вызывает DrvEnableDriver по имени, его имя отображается полужирным шрифтом. GDI вызывает все остальные функции драйвера отображения путем массива указателей функций, возвращаемых DrvEnableDriver .
Имя функции | Description |
---|---|
DrvEnableDriver | Позволяет драйверу инициализировать себя и возвращать указатели на поддерживаемые функции DDI графики. |
DrvCompletePDEV | Предоставляет драйверу дескриптор GDI экземпляру устройства. |
DrvDisableDriver | (Необязательно) Позволяет драйверу выполнять операции очистки перед выгрузки. |
DrvDisablePDEV | Позволяет драйверу удалять сведения об экземпляре устройства. |
DrvDisableSurface | Позволяет драйверу удалить поверхность рисования. |
DrvEnablePDEV | Позволяет драйверу предоставлять GDI с характеристиками физического устройства и инициализировать сведения об экземпляре устройства. |
DrvEnableSurface | Позволяет драйверу создать область рисования. |
DrvQueryDeviceSupport | (Необязательно) Возвращает запрошенные сведения, относящиеся к устройству. |
DrvQueryDriverInfo | (Необязательно) Возвращает запрошенные сведения о драйвере. |
Библиотеки DLL графики принтера также отвечают за определение следующих функций DDI для печати, которые вызываются в определенных точках во время отрисовки задания печати.
Function | При вызове |
---|---|
DrvEndDoc | Когда GDI завершит отправку документа драйверу для отрисовки. |
DrvNextBand | (Необязательно) Когда GDI завершит рисование полосы для физической страницы, чтобы драйвер может отправить полосу на принтер. |
DrvQueryPerBandInfo | (Необязательно) Прежде чем GDI начинает рисование полосы для физической страницы, поэтому драйвер может предоставить GDI с информацией о диапазоне. |
DrvSendPage | Когда GDI завершит рисование физической страницы, чтобы драйвер может отправить страницу на принтер. |
DrvStartBanding | (Необязательно) Когда GDI готов начать отправку полос физической страницы драйверу для отрисовки. |
DrvStartDoc | Когда GDI готов к отправке документа драйверу для отрисовки. |
DrvStartPage | Когда GDI готов начать отправку страницы документа драйверу для отрисовки. |
Как правило, библиотека DLL графики принтера также определяет все дополнительные функции DDI графики для отрисовки заданий печати. Число и тип определенных функций зависит от:
Поддерживает ли драйвер использование управляемых GDI или управляемых устройствами поверхностей рисования (или обоих). Дополнительные сведения см. в разделе "Типы Surface".
Степень, в которой операции рисования могут обрабатываться GDI вместо того, чтобы выполняться самим драйвером. Дополнительные сведения см. в разделе "Использование DDI графики".
Все функции, определенные графическими библиотеками DLL принтера, вызываются подсистемой отрисовки графики в режиме ядра GDI (GRE).
Функции DrvEnableDriver и DrvQueryDriverInfo экспортируются библиотекой DLL графики. Адреса всех остальных поддерживаемых функций DDI графики помещаются в таблицу, возвращаемую функцией DrvEnableDriver .