The future of rendering in GNOME

Owen Taylor
Red Hat Inc,
GUADEC 5, Kristiansand, Norway
28 June 2004


Currently, GNOME has several rendering backends. GDK has drawing code based on the almost 20 year old Xlib APIs. Some parts of GNOME,such as GnomeCanvas render using using libart. gnome-print is yet another rendering API. This mish-mash of rendering technology means that operations that should be simple, such as printing internationalized text in a PangoLayout are hard or impossible.The Cairo library provides a convenient, simple API in front of a sophisticated rendering model with capabilities similar to those in the PDF-1.4 or SVG rendering models. This provides the possibility of a comprehensive solution providing both high-quality display on the screen and printing in a single API. But how will it integrate with Pango, GDK, GTK+, gnome-print and the rest of GNOME? This talk provides a roadmap to how a migration to Cairo could work and how it integrates with existing GNOME technologies.



By Owen Taylor <>

Return to my home page