Cairo supports output (including rasterisation) to a number of different back-ends, known as "surfaces" in its code.
Back-ends support includes output to the X Window System, via both Xlib and XCB, Win32 GDI, OS X Quartz Compositor, the BeOS API, OS/2, OpenGL contexts (directly[7] and via glitz), local image buffers, PNG files, PDF, PostScript, DirectFB and SVG files.
Any drawing process takes place in three steps: This constitutes a fundamentally different approach from Scalable Vector Graphics (SVG), which specifies the color of shapes with Cascading Style Sheets (CSS) rules.
Keith Packard and Carl Worth founded the Cairo project for use in the X Window System.
The name was changed to emphasize the idea of a cross-platform library to access display server, not tied to the X Window System.