Principles of Printer Device Drivers for
Microsoft Windows 9x
Overview.This workshop introduces
C programmers to the elements needed to write printer device drivers for Windows®
3.x, Windows® 95, Windows® 98,
and Windows® Me. The workshop covers the architecture
of 16-bit printer device drivers, as well as the basics of programming with
the Windows Application Programming Interface (API). The workshop adopts a
strategy of drilling through the graphic API to the underlying Device Driver
Interface (DDI) as implemented in sixteen-bit printer driver dynamic link
library (DLL).
Who
Should Attend.This five-day lecture and
lab-based workshop is intended for software and hardware engineers who need
to understand how to make printing work in Windows®
98. This includes hardware designers, firmware programmers, device driver
writers, as well as application programmers who wish to have a deeper understanding
of the Windows printing process. No prior experience with Windows programming
is required.
Performance
Objectives.At workshop completion,
attendees will be able to...
Describe
the printing pipeline for Windows® 3.1, Windows®
9x, and Windows® Me.
Describe
the basic features of the Graphics Device Interface (GDI).
Describe
the three types of graphic output supported by Windows.
Describe
the drawing attributes that affect text, raster, and vector output.
Write
code for a dynamic link library, suitable for use as a 16-bit printer device
driver.
Write
application code to create text, raster, and vector output on a display screen
and on printed hardcopy.
Write
printer driver code to support the proper creation of text output.
Write
printer driver code to support the proper creation of raster output.
Write
printer driver code to support the proper creation of vector output.
Workshop Outline
MONDAY
TUESDAY
WEDNESDAY
THURSDAY
FRIDAY
Windows
98 Printing Architecture
GDI
Design Goal
Printing
Pipeline
Installable
Components
The Bitmap Printer Driver
Basic
Operation
Installation
& Use
Printer
Driver Initialization
A Minimum Printing Program
An
Introduction to GDI
Creating
& Controlling a Print Job
Debugging Printer Drivers
Installation
& Symbol Loading
Commands
Customizing
Soft/ICE
Driver
Entry Points
Driver
Control & Query
Printing
Management
Attribute
& Drawing Functions
User-Interface
Printer Driver Tools
The
Null Printer Driver
Null
GDI
Windows 98 Memory Management
System
Memory Use
16-Bit
Segmented Memory
Dynamic
Memory Allocation
Resources
Building Dynamic Link Libraries
What
is Dynamic Linking?
Building
DLLs
Exporting
Functions
Text
API
Text
Drawing Functions
DC
Text Attributes
Creating
& Selecting Fonts
Query
Metrics for Text Placement
Fonts
Font
Creation & Enumeration
Font
Mapping
Text DDI
Role
of PDEVICE
Three
Modes of ExtTextOut
Raster
API
Pixels
& Color
Brushes
Bitmaps
Raster DDI
Driver
Functions
Capability
Bits
Banding
Vector API
Vector
Attributes
GDI
Drawing Functions
Vector DDI
Driver
Functions
Data
Structures
Image
Color Matching
Color
Selection
Windows
9x ICM Support
Driver-Level
Issues
Driver Initialization and Control
GDIINFO
Structure
Print
Job Control
The Spool Subsystem
Print
Processor
Printer
Monitor & Language Monitor
For more technical details on any
of our hands-on training sessions,
Please call 1-800-942-3535 or email us at
info@paulyao.com
International clients, please call 425-747-1355.
(c) Copyright 1990-2002
The Paul Yao Company. All rights reserved.