Cairo è una libreria grafica libera che fornisce interfacce di programmazione per la grafica vettoriale in modo indipendente dal dispositivo e dal sistema operativo utilizzati. Cairo consente il disegno di oggetti in trasparenza e l'uso dell'antialiasing nella grafica vettoriale.

Attualmente supporta l'X Window System, GDI (Windows), Quartz, BeOS, OpenGL (attraverso glitz), buffer locali, file PNG, PDF, PostScript e SVG. Cairo è progettato per fare uso di accelerazione hardware, se disponibile.

La libreria, che è scritta in C, è utilizzabile anche in altri linguaggi di programmazione tra cui C++, C#, Lisp, Haskell, Java, Python, Perl, Ruby, Smalltalk, Factor ed altri.

Storia Il progetto Cairo nacque ad opera di Keith Packard e Carl Worth in ambiente X. Il suo nome originario era Xr o Xr/Xc, cambiato successivamente per enfatizzare il fatto che la libreria fosse multipiattaforma. Il nome "cairo" fu derivato dal nome originario Xr, simile alle lettere greche χ (chi) e ρ (rho).

Tecnologie simili Cairo compete con tecnologie proprietarie simili, come WPF e GDI+ di Microsoft e Quartz di Apple.

Usi

Il progetto Mono fa uso di Cairo sin dalla sua ideazione per implementare GDI+ (libgdiplus) e le classi nel namespace System.Drawing. La versione 1.8 di Gecko, il layout engine di Mozilla Firefox e dei progetti simili, fa uso di Cairo per disegnare i contenuti SVG e <canvas>. Dalla versione 1.9 (su cui si basa la versione 3 di Mozilla Firefox) Gecko fa uso di Cairo per disegnare l'intero contenuto delle pagine. GTK+, a partire dalla versione 2.8 (distribuita il 13 agosto 2005), fa uso di Cairo per disegnare la quasi totalità degli elementi di interfaccia. WebKitGtk, il port del framework WebKit su GTK+, è interamente basato su Cairo per la generazione delle pagine. La libreria Poppler usa Cairo per visualizzare i documenti PDF. Dalla versione 0.46, il programma di manipolazione di grafica vettoriale Inkscape usa la libreria Cairo per la visualizzazione in modo outline.

Note

Voci correlate Display PostScript

Altri progetti

Collegamenti esterni

Linux.Ars: Cairo here, there and everywhere Gnomejournal: Scrivere un widget usando Cairo e GTK+ 2.8. Tutorial su Cairo per programmatori Python

Categoria:Freedesktop.org Categoria:Librerie grafiche