Computer Graphics: Principles and practice by Foley, van Dam, Feiner & Hughes.
This hefty tome is regarded as the bible of graphics programming. Hardware, 2D drawing, the underlying Mathematics, GUIs and most aspects of software 3D engines are all covered in depth. Graphics programming is a very dynamic field, and while this book published in 1990 may be a bit out of date (for instance, there is no mention of Open GL), the fundamentals remain the same, so it is still very useful.
Chapters:
Introduction
Programming in the simple raster graphics package
Basic raster graphics algorithms for drawing 2d primitives
Graphics Hardware
Geometrical transformations
Viewing in 3d
Object hierarchy and simple phics (Sphigs)
Input Devices, interaction techniques and interaction tasks
Dialogue design
User Interface Software
Representing curves and surfaces
Solid modelling
Achromatic and colored light
The quest for visual realism
Visible-surface determination
Illumination and shading
Image manipulation and storage
Advanced raster graphics architecture
Advanced geometric and raster algorithms
Advanced modeling techniques
Animation
Appendix: Mathematics for computer graphics