Advances in Windows Printing Daniel Emerson Program Manager Digital Documents Platform and Solutions Microsoft Corporation
Session Outline Tenets of Windows Printing Improvements Rich end-to-end document and color printing Address technical limitations Windows Longhorn/WinFX Print Paths Business impact Development requirements Call to Action
Session Goals Ensure understanding of Longhorn Printing Landscape End to End Data flow Enabling vendor innovation Provide details on technologies contributing to keynote demonstration
Metro: The Keystone of Windows Printing New format, code-named “Metro”, is the foundational building block for Longhorn document and printing improvements Enabler for core Windows Printing tenets OS will continue to support today’s drivers and application to enable innovation on new technology Word Document (.doc) Publish as Metro document Print to Metro spool file “Metro” is a document format, a spool file and a PDL
Tenet: Enable Document Workflow Innovation New print spool file is open and extensible Well-defined container format and XML content markup Enables vendor innovation New applications and new spool file share content markup Save Format = Print Format Preserves application content and user intent Spool file viewable using platform services Spool file can be reintroduced into document workflows
Tenet: Enable Color Workflow Innovation Color data can be reliably persisted from the application to the driver Color profiles and processing instructions can be directly embedded in the spool file New spool file supports representation greater than 8 bpc color Improved communication of color capabilities and settings Applications can control color processing “Turn-off” system color management in the new print path Drivers can more completely express color capabilities
Tenet: Realizing WYSIWYG Maintain the contract between screen and print Consistent format for electronic publishing and print publishing ensures fidelity Support Enterprise printing trends In-house printing enabled through improved output fidelity Print on Demand requires alignment of producer and consumer
Architecture Impacts of Tenets Improve abstraction of hardware from software Built on a rich content spool file format Native support for transparency and gradients Enable applications to print to any device without unnecessary “workarounds” Provide new opportunities for print driver innovation Enable modular, extensible framework Eliminate spool file size limitations Facilitate advanced graphics printing for large format media Eliminate content bloat from format translation Remove infrastructure limits on maximum spool file size
Windows Longhorn Print Paths
Print Subsystem Architecture Overview: Simplified View Win32 App WinFX App GDI/DDI Driver MetroDrv Driver Existing PDL Device Metro Device GDI Print Path Metro Print Path GDI to Metro PP Metro to GDI PP New driver model extension, code-named “MetroDrv” Provided by: Microsoft ISV IHV
Print Subsystem Architecture Overview Win32 App WinFX App GDI/DDI Driver MetroDrv Driver Existing PDL Device Metro Device Metro to GDI Conversion GDI to Metro Conversion EMF Metro New spool file format, code-named “Metro” Provided by: Microsoft ISV IHV
Beneficial for Applications Print path selection automatic for both GDI and MetroDrv driver and devices Print Subsystem handles conversion paths Conversions preserve and optimize original content within the bounds of the print path Delivers the value of Metro drivers and devices to Win32 applications Win32 application can be optimized for conversion path for additional improvements
Beneficial for Drivers Print path selection automatic for both Win32 and WinFX applications Print Subsystem handles conversion paths Enables “scalable consumption” IHV can optimize driver to complement device functionality Enhanced Version 3 driver model: MetroDrv MetroDrv offers better flexibility Extensible filter pipeline, filter reuse, rich spool file format MetroDrv offers better fidelity WYSWYG preservation of application content
Beneficial for Devices Allows direct consumption of the spool file in the device Enables PCs, mobile devices and removable storage to directly print to supporting devices Multi-function devices become active workflow participants Devices are both sources and destinations for document content
Print Path Components: Metro Spool File Format Open, extensible format for fixed layout, paginated content Better integrates printing into document and color workflows Word Document (.doc) Consume in driver or directly in printer as a PDL Publish as Metro document Print to printer (Metro spool file) Metro is a document format, a spool file and a PDL
Print Path Components: MetroDrv Driver Extends the existing Version 3 print driver model Works with Point and Print downlevel to Windows XP Consumes the Metro spool file format Enables vendor innovation through a filter pipeline Designed for print processing, rendering, and post- processing functionality MS provides the infrastructure and DDK samples Enable application compatibility through built-in GDI to Metro conversion Attend “Foundation Technologies for the Document Life Cycle” presentation for more information on Metro consumption
Print Subsystem WinFX Content Production WinFX App GDI/DDI Driver MetroDrv Driver Existing PDL Device Metro Device Metro to GDI Conversion EMF Metro Provided by: Microsoft ISV IHV
Print Subsystem Metro Print Path WinFX App MetroDrv Driver Existing PDL Device Metro Device Metro Provided by: Microsoft ISV IHV
Metro Print Path Details Optimal printing path for fidelity and performance Metro content from application (production) to driver/device (consumption) – end to end support Spooler is “Metro-aware” Native spool file Direct spooling path Components WinFX application MetroDrv driver
Print Subsystem Metro to GDI Conversion Print Path WinFX App GDI/DDI Driver Existing PDL Device Metro to GDI Conversion EMF Provided by: Microsoft ISV IHV
Metro to GDI Conversion Print Path Details Ensures WinFX applications can print to existing drivers Print Subsystem intelligently converts content within the capabilities of GDI Transparency is flattened Gradients are simulated Complexity gradient and transparency interaction may be rasterized for performance WinFX printing infrastructure simulates a Win32 application printing Components WinFX Application GDI/DDI Driver
Print Subsystem Win32 Content Production Win32 App GDI/DDI Driver MetroDrv Driver Existing PDL Device Metro Device GDI to Metro Conversion EMF Metro Provided by: Microsoft ISV IHV
Print Subsystem GDI to Metro Conversion Print Path Win32 App MetroDrv Driver Existing PDL Device Metro Device GDI to Metro Conversion Metro Provided by: Microsoft ISV IHV
GDI to Metro Conversion Print Path Details Enables Win32 applications to print to MetroDrv drivers Conversion is bundled in MetroDrv driver package Conversion optimizes for Metro benefits Resource reuse Font subsetting Transparency and gradient optimizations Components Win32 Application MetroDrv Driver
Print Subsystem GDI Print Path Win32 App GDI/DDI Driver Existing PDL Device EMF Provided by: Microsoft ISV IHV
GDI Print Path Details Existing GDI Printing still available for Windows Longhorn Components Win32 Application GDI/DDI Driver
Print Paths Comparisons: Quality Win32 App WinFX App GDI/DDI Driver MetroDrv Driver PS/PCL Device Metro Device GDI Print Path Metro Print Path GDI to Metro PP Metro to GDI PP Baseline quality. Today’s print path Baseline quality. Today’s print path Good. Optimizations for transparencies and gradients, post GDI/GDI+. Best. Transparencies and gradients are graphics primitive attributes and natively consumed by devices/drivers. Better. Flattening filters applied to improve fidelity of transparency and gradients, converted to GDI. Provided by: Microsoft ISV IHV
Print Paths Comparisons: Performance Win32 App WinFX App GDI/DDI Driver MetroDrv Driver PS/PCL Device Metro Device GDI Print Path Metro Print Path GDI to Metro PP Metro to GDI PP Baseline quality. Today’s print path Baseline quality. Today’s print path Better. Graphics optimizations, font subsetting and resource reuse support in conversion reduce spool file size Best. Native graphical primitives, resource management, and native spool file support result in highest performance. Good. Intelligent flattening reduces rasterization. Provided by: Microsoft ISV IHV
Call to Action Understand Longhorn Print Architecture Identify strategic devices to target the Metro Print Path Identify extension scenarios Understand the Windows Color System Review the Metro v.7 specification and provide feedback to microsoft.com Start implementation with Beta 1 Convert GDI/DDI based drivers to MetroDrv drivers Explore the sample filters in Longhorn Beta 1 WDK Consider on-device rendering with a RIP implementation A reference implementation is planned for Longhorn Beta 1 tools Visit the WinHEC Hardware Showcase and vendor booths in the exhibition
Community Resources Community Sites List of Newsgroups us/default.aspx Attend a free chat or webcast Locate a local user group(s) Non-Microsoft Community Sites
Additional Resources MSDN Developer Community Chats: Printer Drivers -- Ask the Experts Online Windows Drivers: Printer Drivers Windows Drivers Printing and Networking Web resources WS-Devices Profile: default.aspx?pull=/library/en-us/dnglobspec/html/devprof.asp Printer Working Group WHDC Printing home page: WHDC Still Imaging / WIA home page: Color Use Cases “Writing Effective Use Cases”, Alistair Cockburn, ISBN
Additional Resources For developer print questions: microsoft.com For developer scan questions: microsoft.com For developer color questions: microsoft.com Developer kit references: SDK for Print Schema User Manual and Keywords: us/printschema/PrintSchema/Overviews/PrintSchema_entry.asp us/printschema/PrintSchema/Overviews/PrintSchema_entry.asp WDK for PT/PC interfaces: Reference\Printer Driver and Spooler Component Interfaces\Printer Driver Functions and Structures\Unidrv and Pscript Interfaces\Methods for Print Ticket Providers and Consumers WinFX Print System Object Documentation available in WinFX Beta 1 SDK
Related Sessions: WinHEC 2005 April 25: Foundation Technologies for the Document Life Cycle Windows Color System Overview Ask the Experts: Windows Color Windows Printing Windows Document Technology Avalon April 27: Avalon Imaging Codec Architecture: Overview Web Services for Devices: the.NET Vision Realized New Document Life Cycle Opportunities