Изменения поведения установки DEVMODE по умолчанию драйвера Unidrv/PScript5
Внимание
Современная платформа печати — это предпочтительный способ взаимодействия с принтерами Windows. Рекомендуется использовать драйвер класса "Входящие" Microsoft IPP вместе с приложениями поддержки печати (PSA), чтобы настроить возможности печати в Windows 10 и 11 для разработки устройств принтера.
Дополнительные сведения см. в статье "Современная платформа печати" и руководство по проектированию приложений поддержки печати.
Драйвер Unidrv/PScript5, работающий в режиме XPSDrv, создает следующие изменения поведения установки DEVMODE по умолчанию драйвера.
В следующей таблице "Только PS" означает, что изменение поведения зависит от драйвера PScript5. "Только Unidrv" означает, что изменение поведения зависит от драйвера Unidrv. Если оба этих фраз не отображаются, изменение поведения применяется как к драйверам Unidrv, так и к PScript5.
Затронутые поля DEVMODE по умолчанию | Поведение, отличное от XPSDrv | Поведение XPSDrv |
---|---|---|
dmFields: DM_ORIENTATION dmOrientation |
Жестко закодированный, чтобы всегда задать флаг DM_ORIENTATION в dmFields и задать dmOrientation = DMORIENT_PORTRAIT. | (Только Unidrv) Установите только флаг DM_ORIENTATION в dmFields, если файл GPD поддерживает функцию GPD "Ориентация". DmOrientation устанавливается на основе параметра GPD GPD по умолчанию, указанного в файле GPD. (только PS) Установите только флаг DM_ORIENTATION в dmFields , если PPD-файл поддерживает функцию с ключевым словом "PageOrientation" Print Schema. dmOrientation имеет значение DMORIENT_LANDSCAPE , если эта функция имеет параметр по умолчанию с ключевым словом "Альбомная" или "Обратныйlandscape" Print Schema. В противном случае для dmOrientation задано значение DMORIENT_PORTRAIT. |
dmFields: DM_SCALE |
(Только Unidrv) Жестко закодирован, чтобы никогда не задавать флаг DM_SCALE в dmFields. (только PS) Жестко закодировано, чтобы всегда задать флаг DM_SCALE в dmFields. |
Установите только флаг DM_SCALE в dmFields, если GPD или PPD поддерживают функцию с ключевым словом "PageScaling" Print Schema. |
dmFields: DM_TTOPTION dmTTOption |
Жестко закодировано, чтобы всегда задать флаг DM_TTOPTION в dmFields и задать DMTT_SUBDEV dmTTOption = . | Если GPD или PPD поддерживает функцию с ключевым словом "PageDeviceFontSubstitution" Print Schema и функция имеет параметр по умолчанию с ключевым словом "Вкл. Печать схемы", задайте флаг DM_TTOPTION и задайте dmTTOption = DMTT_SUBDEV. В противном случае, если GPD или PPD поддерживает функцию с ключевым словом "PageTrueTypeFontMode" Print Schema и одним из следующих вариантов: Если функция имеет параметр по умолчанию с ключевым словом "DownloadAsOutlineFont" Print Schema, установите флаг DM_TTOPTION и задайте DMTT_DOWNLOAD_OUTLINE dmTTOption = . Если функция имеет параметр по умолчанию с ключевым словом "RenderAsBitmap" Print Schema, установите флаг DM_TTOPTION и задайте dmTTOption = DMTT_BITMAP. Если функция имеет параметр по умолчанию с параметром "Automatic", "DownloadAsRasterFont" или "DownloadAsNativeTrueTypeFont", задайте флаг DM_TTOPTION и задайте DMTT_DOWNLOAD dmTTOption = . В противном случае флаг DM_TTOPTION очищается в dmFields, так как принтер не указывает, что он поддерживает подстановку шрифта TrueType или скачивание. |
dmFields: DM_NUP |
Жестко закодировано, чтобы всегда задать флаг DM_NUP в dmFields. | Установите только флаг DM_NUP в dmFields, если GPD или PPD поддерживают функцию с ключевым словом "JobNUpAllDocumentsContiguously" или "DocumentNUp". |
dmFields: DM_COLOR |
Жестко закодирован, чтобы всегда задать флаг DM_COLOR в dmFields. | Установите только флаг DM_COLOR в dmFields, если GPD или PPD указывает, что принтер является цветным принтером. |
dmFields: DM_PRINTQUALITY, DM_YRESOLUTION |
(Только Unidrv) Жестко закодированный, чтобы всегда задать флаг DM_PRINTQUALITY в полях dm***. (только PS) Жестко закодировано, чтобы всегда задавать флаги DM_PRINTQUALITY и DM_YRESOLUTION в dmFields. |
|
dmFields: DM_COLLATE |
Жестко закодированный, чтобы всегда задать флаг DM_COLLATE в dmFields и задать dmCollate = DMCOLLATE_TRUE. | Установите только флаг DM_COLLATE в dmFields, если GPD или PPD поддерживают функцию GPD или PPD. DmCollate устанавливается на основе параметра GPD или PPD компонента по умолчанию, указанного в GPD или PPD. |
dmFields: DM_ICMMETHOD, DM_ICMINTENT |
(Только Unidrv) Жестко закодировано, чтобы всегда задавать флаги DM_ICMMETHOD и DM_ICMINTENT в dmFields. (только PS) Если PPD указывает, что принтер является цветным принтером, задайте DM_ICMMETHOD и флаги DM_ICMINTENT в dmFields. |
Никогда не устанавливайте флаги DM_ICMMETHOD или DM_ICMINTENT в dmFields. |
dmFields: DM_DITHERTYPE |
(Только Unidrv) Жестко закодировано, чтобы всегда задать флаг DM_DITHERTYPE в dmFields. | (Только Unidrv) Никогда не устанавливайте флаг DM_DITHERTYPE в dmFields. |