Win32 API-stöd för utskriftsfunktioner
Viktig
Den moderna utskriftsplattformen är Windows bästa sätt att kommunicera med skrivare. Vi rekommenderar att du använder Microsofts IPP-drivrutin för inkorgsklass tillsammans med Print Support Apps (PSA) för att anpassa utskriftsupplevelsen i Windows 10 och 11 för enhetsutveckling av skrivare.
Mer information finns i designguiden för Print-supportappen.
Windows Vista-utskriftsundersystemet ger kompatibilitetsstöd som gör det möjligt för WPF-program (Windows Presentation Foundation) att använda GDI-baserade utskriftsdrivrutiner och gör det möjligt för Microsoft Win32-baserade program att använda XPSDrv-utskriftsdrivrutiner. Den här kompatibiliteten tillhandahålls via ett lager av programvaru-shims. Shims är programvarumoduler som utför transformeringsåtgärder på data så att annars inkompatibel programvara kan samverka. Följande bild visar datasökvägarna för den här implementeringen för utskriftsfunktioner.
Både XPSDrv-utskriftsdrivrutiner och GDI-baserade utskriftsdrivrutiner i version 3 stöder funktionen DrvDeviceCapabilities. När ett Win32-program anropar DrvDeviceCapabilities eller funktionen GetDevCap anropar undersystemet för utskrift DrvDeviceCapabilities för att samla in information om enhetens kapacitet från utskriftsdrivrutinen.
När ett WPF-program begär ett PrintCapabilities-dokument från en utskriftsdrivrutin gör undersystemet utskrift något av följande:
Om utskriftsdrivrutinen stöder IPrintTicketProvider--gränssnittet frågar utskriftsundersystemet utskriftsdrivrutinen efter dokumentet PrintCapabilities med hjälp av metoden IPrintTicketProvider::GetPrintCapabilities.
Om utskriftsdrivrutinen inte stöder IPrintTicketProvider--gränssnittet, kommer Utskriftsbiljetthanteraren att fråga funktionen DrvDeviceCapabilities i utskriftsdrivrutinen och använda den returnerade informationen för att skapa ett Print Ticket-dokument som returneras till applikationen.
Mer information om hur gränssnittet IPrintTicketProvider stöds av Microsoft-utskriftsdrivrutiner finns i Skrivardrivrutin och Plugin-gränssnittsdesign i Windows Vista.