Cairo (grafica)
cairo software | |
---|---|
Genere | Computer grafica |
Sviluppatore | Carl Worth, Behdad Esfahbod |
Ultima versione | 1.18.0 (23 settembre 2023) |
Sistema operativo | Multipiattaforma |
Linguaggio | C |
Licenza | LGPL o MPL (licenza libera) |
Sito web | www.cairographics.org/ |
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[1] tra cui C++, C#, Lisp, Haskell, Java, Python, Perl, Ruby, Smalltalk, Factor ed altri.
Storia
[modifica | modifica wikitesto]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)[2].
Tecnologie simili
[modifica | modifica wikitesto]Cairo compete con tecnologie proprietarie simili, come WPF e GDI+ di Microsoft e Quartz di Apple.
Usi
[modifica | modifica wikitesto]- 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[3] 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.[4]
- 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.[5]
Note
[modifica | modifica wikitesto]- ^ (EN) Bindings supportati ufficialmente, su cairographics.org. URL consultato il 12-05-2008.
- ^ (EN) Discussione sul nome Cairo, in mailing list di Cairo. URL consultato l'11-05-2008.
- ^ (EN) Proposta per l'uso di Cairo nella Gtk+, su people.redhat.com. URL consultato il 12-05-2008.
- ^ (EN) Primi esperimenti con WebKitGtk, in blog di Alp Toker. URL consultato il 12-05-2008.
- ^ (EN) Note sul rilascio di Inkscape 0.46, in wiki di Inkscape. URL consultato l'11-05-2008.
Voci correlate
[modifica | modifica wikitesto]Altri progetti
[modifica | modifica wikitesto]Wikimedia Commons contiene immagini o altri file su Cairo
Collegamenti esterni
[modifica | modifica wikitesto]- (EN) Sito ufficiale, su cairographics.org.
- Cairo / Cairo (altra versione), su packages.debian.org.
- Repository sorgenti di Cairo, su gitlab.freedesktop.org.
- (EN) Cairo, su Free Software Directory.
- (EN) Linux.Ars: Cairo here, there and everywhere
- (EN) Gnomejournal: Scrivere un widget usando Cairo e GTK+ 2.8. [1][collegamento interrotto]
- (EN) Tutorial su Cairo Archiviato il 12 marzo 2007 in Internet Archive. per programmatori Python