Cairo
原作者 | 基思·帕卡德、卡爾·沃思[1] |
---|---|
開發者 | 卡爾·沃思、貝赫達德·埃斯法赫博德 |
目前版本 |
|
原始碼庫 | |
程式語言 | C語言 |
作業系統 | 跨平台 |
類型 | 圖形庫 |
特許條款 | GNU較寬鬆公共許可證版本2.1或是Mozilla公眾特許條款版本1.1 |
網站 | www |
Cairo是一個用於提供向量圖形繪圖的自由函式庫,Cairo提供在多個背景下做二維空間的繪圖,進階的更可以使用硬件加速功能[3]。雖然Cairo是使用C語言撰寫的,但是當使用cairo時,可以用許多其他種語言來使用,包括有C++、C#、Java、Python、Perl、Ruby、Scheme、Smalltalk以及許多種語言[4],cairo在GNU較寬鬆公共許可證與Mozilla公眾特許條款兩種特許條款下發行。
後端
Cairo支援很多不同後端的輸出,在實現中被稱作「surface」。支援的後端包括X Window系統、Win32 GDI、Quartz Compositor、OS/2,OpenGL環境(直接或間接地通過glitz)、主記憶體緩衝區、PNG、PDF、PostScript、DirectFB和SVG檔案。
還有一些開發中的後端如:OpenVG,Qt,Skia和Windows Direct2D。[5]
知名應用
因為能夠提供進階的跨平台2D繪圖的支援,cairo在開源社區十分流行。
- GTK+從2005年的2.8版開始,使用cairo去彩現它的大多數控制項,從GTK+ 3開始,所有的彩現任務由cairo完成。
- Mono專案,包括Moonlight,在很早便設想用cairo作為後端驅動GDI+(libgdiplus)和 System.Drawing命名空間。
- Mozilla專案在最近版本的Gecko排版引擎中使用cairo,用來彩現生成的圖形輸出。
- Poppler庫使用cairo彩現PDF文件. cairo使得對反鋸齒向量圖形和透明物件的繪製成為可能。
- 向量繪圖應用程式Inkscape使用cairo圖形庫顯示其概要模式,以及自從0.46正式版使用它輸出PDF和PostScript文件。
- FontForge在2008年10月中旬啟用cairo為默其認彩現圖形庫。
- R語言經cairo用PDF,PostScript和SVG格式輸出圖像。
- Gnuplot 4.4現在使用cairo來彩現PDF和PNG輸出。
歷史
基思·帕卡德和卡爾·沃思為在X Window系統使用創立了cairo專案[6]。它原本(直到2003年)被稱做Xr或Xr/Xc。為了加強跨平台而非被局限在X Window平台繪圖的印象,專案更換了名稱。Xr經被解釋為希臘字母chi和rho衍生出新名稱cairo。
相似的技術
Cairo大抵相似於微軟的WPF和GDI+、蘋果公司的Quartz 2D、Anti-Grain Geometry(AGG)。
相關條目
參考資料
- ^ Carl's boring web pages. cworth.org. 2013 [11 July 2014]. (原始內容存檔於2014-05-17).
- ^ cairo-1.18.2. 2024年9月1日 [2024年9月7日].
- ^ Cairo homepage. [2010-10-30]. (原始內容存檔於2011-02-23).
- ^ Cairo Language Bindings. [2014-04-16]. (原始內容存檔於2011-05-17).
- ^ Bas Schouten. Direct2D: Hardware Rendering a Browser. 2009-11-22 [2010-02-12]. (原始內容存檔於2010-02-10).
- ^ Xr: Cross-device Rendering for Vector Graphics. [2009-06-08]. (原始內容存檔於2009-06-14).