A Minimum Printing Program
- Entry Point & Message Loop
- DEVMODE Structure
- Printing API
Graphics Device Interface API
- Text & Fonts
- Bitmaps & Raster
- Pens & Lines, Brushes & Areas
The Unicode Character Set
- Why Unicode
- Compiler & Library Support
Dynamic Link Libraries
- Exporting Functions
- Tour of COM In-Process Servers
- Resources in DLLs
|
The Windows Printing Pipeline
- Flow of Control
- Installable Components
Printer Mini-Driver Development Tool
- Generic Printer Description (GPD) Files
- Required vs. Optional Entries
- Features & Commands
Debugging Printer Drivers
- Visual Studio
- Numega's SoftICE
- Tips & Tricks
Printer Spying Tools
- PrintSpy
- Spooler Spy Tools
- Network Socket Spy
|
Overview of Driver User-Interface
- GPD Entries
- COM Interfaces
- Device Capabilities
- Document and Device Properties
Property Sheets
- Adding Features with CPSUI
- New Property Pages
- Registry Functions
|
Overview of Rendering Customizations
- When to customize
- Customization choices
- The RenderSpy Tool
Text Rendering Customizations
- Role of DrvExtTextOut
- Custom font installer
- Custom font management
Raster Rendering Customizations
- Base DDI Raster Functions
- Halftoning & Data stream filtering
Vector Rendering Customizations
- Paths & Brushes
- Hookable functions
|
Native Driver Entry Points
- Initialization
- Spooling
- Rendering
- User-Interface
Driver Setup & Installation
- INF File
- Resources
- Data File
- Uninstall
Internet & Network Printing
- Point-N-Print
- Network Driver Issues
|