Cairo (graphics): Difference between revisions
Thumperward (talk | contribs) if consensus is that it isn't lowercase, this should be fixed throughout |
Fix URL broken by User:Thumperward earlier today. |
||
Line 16: | Line 16: | ||
== History== |
== History== |
||
The Cairo project was founded by [[Keith Packard]] and [[Carl Worth]] for use in the [[X Window System]]. It was originally called '''Xr''' or '''Xr/Xc'''. The name was changed to emphasize the idea that it was a cross-platform library and not tied to the [[X server]]. The name "Cairo" was derived from the original name ''Xr'', similar to the Greek letters [[chi (letter)|chi]] and [[rho (letter)|rho]].<ref>{{cite web | title=Mailing list thread about the Cairo name change | url=http://lists.freedesktop.org/archives/ |
The Cairo project was founded by [[Keith Packard]] and [[Carl Worth]] for use in the [[X Window System]]. It was originally called '''Xr''' or '''Xr/Xc'''. The name was changed to emphasize the idea that it was a cross-platform library and not tied to the [[X server]]. The name "Cairo" was derived from the original name ''Xr'', similar to the Greek letters [[chi (letter)|chi]] and [[rho (letter)|rho]].<ref>{{cite web | title=Mailing list thread about the Cairo name change | url=http://lists.freedesktop.org/archives/cairo/2003-July/000184.html | accessdate=2006-12-02}}</ref> |
||
== Backends == |
== Backends == |
Revision as of 17:01, 29 August 2008
Developer(s) | Carl Worth, Behdad Esfahbod |
---|---|
Stable release | 1.18.2 (September 1, 2024[1]) [±] |
Repository | |
Written in | C |
Operating system | Cross-platform |
Type | Graphics library |
License | GNU Lesser General Public License or Mozilla Public License |
Website | http://Cairographics.org/ |
Cairo is a software library used to provide a vector graphics-based, device-independent API for software developers. It is designed to provide primitives for 2-dimensional drawing across a number of different backends. Cairo is designed to use hardware acceleration when available.
Although written in C, there are bindings for using the Cairo graphics library from many other programming languages, including Haskell, Java, Perl, Python, Scheme, Smalltalk and several others.[2] Dual licensed under the GNU Lesser General Public License and the Mozilla Public License, Cairo is free software.
History
The Cairo project was founded by Keith Packard and Carl Worth for use in the X Window System. It was originally called Xr or Xr/Xc. The name was changed to emphasize the idea that it was a cross-platform library and not tied to the X server. The name "Cairo" was derived from the original name Xr, similar to the Greek letters chi and rho.[3]
Backends
Cairo supports output to a number of different backends. Backend support includes output to the X Window System, Win32 GDI, Mac OS X Quartz, the BeOS API, OS/2, OpenGL contexts (via glitz), local image buffers, PNG files, PDF, PostScript, DirectFB and SVG files.
Similar technologies
Cairo has been compared to similar technologies like WPF and GDI+ from Microsoft, Quartz 2D from Apple Inc, and Anti-Grain Geometry (AGG).
Notable usage
Cairo is popular among the open source community for providing cross-platform support for advanced 2D drawing.
GTK+, starting in 2005 with version 2.8, uses Cairo to render the majority of its widgets.
The Mono Project, including Moonlight, has been using Cairo since very early in conception, to power its backends of its GDI+ (libgdiplus) and System.Drawing namespaces.
Mozilla
The Mozilla project has made use of Cairo in recent versions of its Gecko layout engine, used for rendering the graphical output of Mozilla products. Gecko 1.8, the layout engine for Mozilla Firefox 2.0 and SeaMonkey 1.0, used Cairo to render SVG and <canvas> content. Gecko 1.9, the release of Gecko that serves as the basis of Firefox 3, uses Cairo as the graphics backend for rendering both web page content and the user interface (or "chrome").
WebKit
The WebKit framework uses Cairo for all rendering in the GTK+ port. Support has also been added for SVG and <canvas> content using Cairo.
Poppler
The Poppler library uses Cairo to render PDF documents. Cairo enables the drawing of antialiased vector graphics and transparent objects.
Shoes
The Shoes windowing toolkit for Ruby uses Cairo for 2D drawing.
Inkscape
The latest version of the vector graphics application Inkscape (version 0.46), uses the Cairo library for its outline mode display, as well as for PDF and PostScript export.[4]
AmigaOS
AmigaOS 4.1 developers based the new Workbench GUI upon Cairo libraries. This means that this operating system has actually a complete vector based GUI, and due to its internal implements 3D hardware accelerated Porter-Duff composition engine can perform effects like instant zooming of entire GUI screen.
See also
References
- ^ "cairo-1.18.2". www.cairographics.org. Retrieved 2024-09-08.
- ^ Language bindings
- ^ "Mailing list thread about the Cairo name change". Retrieved 2006-12-02.
- ^ "ReleaseNotes046". Inkscape Wiki. Retrieved 2008-03-31.