共用方式為


Unidrv/PScript5 驅動程序預設 DEVMODE 設定行為變更

重要

新式列印平臺是 Windows 與印表機通訊的慣用方法。 我們建議您使用Microsoft的 IPP 收件匣類別驅動程式,以及列印支援應用程式 (PSA),自定義 Windows 10 和 11 中的列印體驗,以進行印表機裝置開發。

如需詳細資訊,請參閱 新式列印平臺列印支援應用程式設計指南

在 XPSDrv 模式中執行的 Unidrv/PScript5 驅動程式會建立下列驅動程序預設 DEVMODE 設定行為變更。

在下表中,「僅限 PS」表示行為變更是 PScript5 驅動程式特有的。 「僅限 Unidrv」表示行為變更是 Unidrv 驅動程式特有的。 如果這兩個片語未出現,行為變更會同時套用至 Unidrv 和 PScript5 驅動程式。

受影響的預設 DEVMODE 欄位 非 XPSDrv 行為 XPSDrv 行為
dmFields:

DM_ORIENTATION

dmOrientation
硬式編碼為一律在 dmFields設定DM_ORIENTATION旗標,並設定 dmOrientation = DMORIENT_PORTRAIT。 (僅限 Unidrv)只有在 GPD 檔案支援 「Orientation」 GPD 功能時,才會在 dmFields設定DM_ORIENTATION旗標。 dmOrientation 是根據 GPD 檔案中指定的「方向」GPD 功能預設選項來設定。

(僅限 PS)只有當PPD檔案支援具有 「PageOrientation」 Print Schema 關鍵詞的功能時,才會在 dmFields設定DM_ORIENTATION旗標。

如果該功能具有默認選項與 「Landscape」 或 「ReverseLandscape」 Print Schema 關鍵詞,dmOrientation 會設定為 DMORIENT_LANDSCAPE 。 否則, dmOrientation 會設定為 DMORIENT_PORTRAIT
dmFields:

DM_SCALE
(僅限 Unidrv)硬式編碼,絕不會在 dmFields 中設定DM_SCALE旗標。

(僅限 PS)硬式編碼,一律在 dmFields 中設定DM_SCALE旗標。
只有在 GPD 或 PPD 支援具有 “PageScaling” Print Schema 關鍵詞的功能時,才會在 dmFields設定DM_SCALE旗標。
dmFields:

DM_TTOPTION

dmTTOption
硬式編碼為一律在 dmFields 中設定DM_TTOPTION旗標,並設定 dmTTOption = DMTT_SUBDEV。 如果 GPD 或 PPD 支援具有 “PageDeviceFontSubstitution” Print Schema 關鍵詞的功能,且此功能具有預設選項與 “On” Print Schema 關鍵詞,請設定 DM_TTOPTION 旗標並設定 dmTTOption = DMTT_SUBDEV。

否則,如果 GPD 或 PPD 支援具有 “PageTrueTypeFontMode” Print Schema 關鍵詞和下列其中一項的功能:

如果功能具有預設選項,且具有 “DownloadAsOutlineFont” Print Schema 關鍵詞,請設定DM_TTOPTION旗標,並設定 dmTTOption = DMTT_DOWNLOAD_OUTLINE。

如果功能具有 「RenderAsBitmap」 Print Schema 關鍵詞的預設選項,請設定DM_TTOPTION旗標並設定 dmTTOption = DMTT_BITMAP。

如果功能的默認選項具有 「Automatic」、“DownloadAsRasterFont” 或 “DownloadAsNativeTrueTypeFont” Print Schema 關鍵詞,請設定DM_TTOPTION旗標並設定 dmTTOption = DMTT_DOWNLOAD。

否則,dmFields 中會清除DM_TTOPTION旗標,因為印表機不會指出它支援 TrueType 字型替代或下載。
dmFields:

DM_NUP
硬式編碼,一律在 dmFields 中 設定DM_NUP旗標 只有在 GPD 或 PPD 支援具有 “JobNUpAllDocumentsContiguously 或 ”DocumentNUp“ Print Schema 關鍵詞的功能時,才會在 dmFields設定DM_NUP旗標。
dmFields:

DM_COLOR
硬式編碼,一律在 dmFields設定DM_COLOR旗標。 只有在 GPD 或 PPD 指定印表機是彩色印表機時,才會在 dmFields設定DM_COLOR旗標。
dmFields:

DM_PRINTQUALITY,DM_YRESOLUTION
(僅限 Unidrv)硬式編碼,一律在 dm****Fields 中設定DM_PRINTQUALITY旗標。

(僅限 PS)硬式編碼為一律在 dmFields設定DM_PRINTQUALITY和DM_YRESOLUTION旗標。
dmFields:

DM_COLLATE
硬式編碼為一律在 dmFields設定DM_COLLATE旗標,並設定 dmCollate = DMCOLLATE_TRUE。 只有在 GPD 或 PPD 支援 「Collate」 GPD 或 PPD 功能時,才會在 dmFields 中設定DM_COLLATE旗標。 dmCollate 是根據 GPD 或 PPD 中所指定之 “Collate” GPD 或 PPD 功能的預設選項來設定。
dmFields:

DM_ICMMETHOD,DM_ICMINTENT
(僅限 Unidrv)硬式編碼,一律在 dmFields設定DM_ICMMETHOD和DM_ICMINTENT旗標。

(僅限 PS)如果PPD指定印表機是彩色印表機,請在 dmFields設定DM_ICMMETHOD和DM_ICMINTENT旗標。
絕不會在 dmFields設定DM_ICMMETHOD或DM_ICMINTENT旗標。
dmFields:

DM_DITHERTYPE
(僅限 Unidrv)硬式編碼,一律在 dmFields 中 設定DM_DITHERTYPE旗標 (僅限 Unidrv)請勿在 dmFields 中 設定DM_DITHERTYPE旗標