Cairo (grafica)

cairo
software
Logo
Logo
GenereComputer grafica
SviluppatoreCarl Worth, Behdad Esfahbod
Ultima versione1.18.0 (23 settembre 2023)
Sistema operativoMultipiattaforma
LinguaggioC
LicenzaLGPL o MPL
(licenza libera)
Sito webwww.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]

  1. ^ (EN) Bindings supportati ufficialmente, su cairographics.org. URL consultato il 12-05-2008.
  2. ^ (EN) Discussione sul nome Cairo, in mailing list di Cairo. URL consultato l'11-05-2008.
  3. ^ (EN) Proposta per l'uso di Cairo nella Gtk+, su people.redhat.com. URL consultato il 12-05-2008.
  4. ^ (EN) Primi esperimenti con WebKitGtk, in blog di Alp Toker. URL consultato il 12-05-2008.
  5. ^ (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]

Collegamenti esterni[modifica | modifica wikitesto]

  Portale Software libero: accedi alle voci di Wikipedia che trattano di Software libero