列印功能架構
重要
新式列印平臺是 Windows 與印表機通訊的慣用方法。 我們建議您使用Microsoft的 IPP 收件匣類別驅動程式,以及列印支援應用程式 (PSA),自定義 Windows 10 和 11 中的列印體驗,以進行印表機裝置開發。
如需詳細資訊,請參閱 新式列印平臺 和 列印支援應用程式設計指南。
PrintCapabilities 物件是由列印驅動程式 IPrintTicketProvider 介面實作的 IPrintTicketProvider::GetPrintCapabilities 方法所傳回。 XPSDrv 列印驅動程式除了DrvDeviceCapabilities 函式之外,還必須實作 IPrintTicketProvider 介面。
您可以修改舊版 GDI 型列印驅動程式,直接提供 PrintCapabilities 檔,但不需要這項修改。 Windows Vista 列印子系統會為 GDI 型驅動程式建立 XML PrintCapabilities 檔,而無法新增傳回驅動程式的功能。 不過,Windows Vista 列印子系統所建立的 PrintCapabilities 檔只包含Microsoft Win32 函 式 DeviceCapabilities 支援的有限參數集。 若要讓以 GDI 為基礎的列印驅動程式提供印表機功能的完整清單,它必須包含 IPrintTicketProvider 介面的支援。
下列清單和圖表說明不同類型的列印驅動程式如何支援列印功能技術:
Unidrv 或 PScript5 列印驅動程式
IPrintTicketProvider 介面已新增至 Windows Vista 中的通用 (Unidrv) 和 PostScript (PScript5) 列印驅動程式。
Unidrv 或 PScript5 列印驅動程式外掛程式外掛程式
具有自定義功能的 Unidrv 和 Pscript5 列印驅動程式需要外掛程式來新增或移除功能,並傳回精確的 PrintCapabilities 檔。 Unidrv 和 PScript5 列印驅動程式的自定義功能外掛程式必須支援 IPrintOemPrintTicketProvider 介面。
整合型 GDI 型和 XPSDrv 列印驅動程式
XPSDrv 列印驅動程序必須支援 IPrintTicketProvider 介面。 以 GDI 為基礎的整合型列印驅動程式必須支援 IPrintTicketProvider 介面,才能傳回 Win32 函 式 DeviceCapabilities 不提供的印表機功能和功能。