Windows Graphics Programming

by Feng Yuan

Software Development

Book Details

Book Title

Windows Graphics Programming: Win32 GDI and Directdraw

Author

Feng Yuan

Publisher

Prentice Hall PTR

Publication Date

2000

ISBN

9780130869852

Number of Pages

1090

Language

English

Format

PDF

File Size

5.50MB

Subject

software-development/devops/Computer graphics

Table of Contents

  • Start
  • Table of Contents
  • Book Cover
  • Author Biography
  • Preface
  • 1. Basic Techniques and Knowledge
  • 1.1 Basic Windows Programming in C/C++
  • 1.2 Assembly Language
  • 1.3 Program Development Environment
  • 1.4 Win32 Executable File Format
  • 1.5 Architecture of Microsoft Windows OS
  • 1.6 Summary
  • 2. Windows Graphics System Architecture
  • 2.1 Windows Graphics System Components
  • 2.2 GDI Architecture
  • 2.3 DirectX Architecture
  • 2.4 Printing Architecture
  • 2.5 Graphics Engine
  • 2.6 Display Drivers
  • 2.7 Printer Drivers
  • 2.8 Summary
  • 3. GDI /DirectDraw Internal Data Structures
  • 3.1 Handles and Object-Oriented Programming
  • 3.2 Decoding GDI Object Handles
  • 3.3 Locating the GDI Object Handle Table
  • 3.4 Decoding the GDI Object Handle Table
  • 3.5 User Mode Data Structure of GDI Objects
  • 3.6 Accessing Kernel Mode Address Space
  • 3.7 WinDbg and the GDI Debugger Extension
  • 3.8 GDI Kernel Mode Data Structure
  • 3.9 DirectDraw Data Structure
  • 3.10 Summary
  • 4. Spying in the Windows Graphics System
  • 4.1 Spying on Win32 API Calls
  • 4.2 Spying on Win32 GDI
  • 4.3 Spying on DirectDraw COM Interfaces
  • 4.4 Spying on GDI System Calls
  • 4.5 Spying on the DDI Interface
  • 4.6 Summary
  • 5. Graphics Device Abstraction
  • 5.1 Modern Video Display Card
  • 5.2 Device Context
  • 5.3 Formalizing Device Context
  • 5.4 Sample Program: Generic Frame Window
  • 5.5 Sample Program: Painting and Device Context
  • 5.6 Summary
  • 6. Coordinate Spaces and Transformation
  • 6.1 The Physical Device Coordinate Space
  • 6.2 The Device Coordinate Space
  • 6.3 The Page Coordinate Space and Mapping Modes
  • 6.4 The World Coordinate Space
  • 6.5 Using Coordinate Spaces
  • 6.6 Sample Program: Scrolling and Zoom
  • 6.7 Summary
  • 7. Pixels
  • 7.1 GDI Objects, Handles, and Handle Table
  • 7.2 Clipping
  • 7.3 Color
  • 7.4 Drawing Pixels
  • 7.5 Sample Program: Mandelbrot Set
  • 7.6 Summary
  • 8. Lines and Curves
  • 8.1 Binary Raster Operations
  • 8.2 Background Mode and Background Color
  • 8.3 Pens
  • 8.4 Lines
  • 8.5 Bezier Curves
  • 8.6 Arcs
  • 8.7 Paths
  • 8.8 Sample: Drawing Your Own Styled-Lines
  • 8.9 Summary
  • 9. Areas
  • 9.1 Brushes
  • 9.2 Rectangles
  • 9.3 Ellipses, Chords, Pies, and Rounded Rectangles
  • 9.4 Polygons
  • 9.5 Closed Paths
  • 9.6 Regions
  • 9.7 Gradient Fills
  • 9.8 Area Fills in Reality
  • 9.9 Summary
  • 10. Bitmap Basics
  • 10.1 Device-Independent Bitmap Formats
  • 10.2 A DIB Class
  • 10.3 Displaying a DIB
  • 10.4 Memory Device Contexts
  • 10.5 Device-Dependent Bitmaps
  • 10.6 Using DDBs
  • 10.7 DIB Section
  • 10.8 Summary
  • 11. Advanced Bitmap Graphics
  • 11.1 Ternary Raster Operations
  • 11.2 Transparent Bitmaps
  • 11.3 Transparency Without a Mask Bitmap
  • 11.4 Alpha Blending
  • 11.5 Summary
  • 12. Image Processing Using Windows Bitmaps
  • 12.1 Generic Pixel Access
  • 12.2 Bitmap Affine Transformation
  • 12.3 Fast Specialized Bitmap Transformer
  • 12.4 Bitmap Color
  • 12.5 Bitmap Pixel Transformation
  • 12.6 Bitmap Spatial Filters
  • 12.7 Summary
  • 13. Palettes
  • 13.1 System Palette
  • 13.2 The Logical Palette
  • 13.3 Palette Messages
  • 13.4 Palette and Bitmaps
  • 13.5 Color Quantization
  • 13.6 Bitmap Color-Depth Reduction
  • 13.7 Summary
  • 14. Fonts
  • 14.1 What's a Font?
  • 14.2 Bitmap Fonts
  • 14.3 Vector Fonts
  • 14.4 Truetype Fonts
  • 14.5 Font Installation and Embedding
  • 14.6 Summary
  • 15. Text
  • 15.1 Logical Fonts
  • 15.2 Querying Logical Font
  • 15.3 Simple Text Drawing
  • 15.4 Advanced Text Drawing
  • 15.5 Text Formatting
  • 15.6 Text Effects
  • 15.7 Summary
  • 16. Metafile
  • 16.1 Metafile Basics
  • 16.2 Inside an Enhanced Metafile
  • 16.3 Enumerating an EMF
  • 16.4 An EMF as a Programming Tool
  • 16.5 Summary
  • 17. Printing
  • 17.1 Understanding the Spooler
  • 17.2 Basic Printing Using GDI
  • 17.3 Design for Printing
  • 17.4 Drawing on Printer Device Context
  • 17.5 Summary
  • 18. DirectDraw and Direct3D Immediate Mode
  • 18.1 Component Object Model (COM)
  • 18.2 DirectDraw Basics
  • 18.3 Building a DirectDraw Graphics Library
  • 18.4 Direct3D Immediate Mode
  • 18.5 Summary