Cairo

出自Local Chinese Wikipedia
(重新導向自Cairo (graphics)
跳至導覽 跳至搜尋

package.lua第80行Lua錯誤:module 'Module:CGroup/core' not found Template:Hatnote

頁面Module:Infobox/styles.css沒有內容。

cairo
File:Cairo banner closeup.svg
腳本錯誤:沒有「InfoboxImageVariant」這個模塊。
原作者基思·帕卡德卡爾·沃思[1]
開發者卡爾·沃思貝赫達德·埃斯法赫博德
當前版本Template:Software version
編程語言C語言
作業系統跨平台
類型圖形庫
許可協議GNU寬通用公共許可證版本2.1或是Mozilla公共許可證版本1.1
網站腳本錯誤:沒有「WikidataIB」這個模塊。
腳本錯誤:沒有「Template wrapper」這個模塊。

Cairo是一個用於提供向量圖形繪圖的自由函式庫,Cairo提供在多個背景下做二維空間的繪圖,進階的更可以使用硬件加速功能[2]。雖然Cairo是使用C語言撰寫的,但是當使用cairo時,可以用許多其他種語言來使用,包括有C++C#JavaPythonPerlRubySchemeSmalltalk以及許多種語言[3],cairo在GNU較寬鬆公共許可證Mozilla公共許可證兩種授權條款下發行。

後端[編輯]

Cairo支持很多不同後端的輸出,在實現中被稱作「surface」。支持的後端包括X Window系統、Win32 GDIQuartz CompositorOS/2OpenGL環境(直接或間接地通過腳本錯誤:沒有「ilh」這個模塊。)、內存緩衝區、PNGPDFPostScriptDirectFBSVG文件。

還有一些開發中的後端如:OpenVGQtSkia和Windows Direct2D[4]

知名應用[編輯]

因為能夠提供高級的跨平台2D繪圖的支持,cairo在開源社區十分流行。

  • GTK+從2005年的2.8版開始,使用cairo去渲染它的大多數控件,從GTK+ 3開始,所有的渲染任務由cairo完成。
  • Mono項目,包括Moonlight,在很早便設想用cairo作為後端驅動GDI+(libgdiplus)和 System.Drawing命名空間。
  • Mozilla項目在最近版本的Gecko排版引擎中使用cairo,用來渲染生成的圖形輸出。
    • Gecko 1.8,Firefox 2.0和SeaMonkey 1.0的排版引擎,使用cairo渲染SVG和<canvas>內容。
    • Gecko 1.9,作為Firefox 3底層使用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項目[5]。它原本(直到2003年)被稱做Xr或Xr/Xc。為了加強跨平台而非被局限在X Window平台繪圖的印象,項目更換了名稱。Xr經被解釋為希臘字母chirho派生出新名稱cairo。

相似的技術[編輯]

Cairo大抵相似於微軟WPFGDI+蘋果公司Quartz 2D腳本錯誤:沒有「ilh」這個模塊。(AGG)。

相關條目[編輯]

參考資料[編輯]

  1. package.lua第80行Lua錯誤:module 'Module:Citation/CS1/Identifiers' not found
  2. package.lua第80行Lua錯誤:module 'Module:Citation/CS1/Identifiers' not found
  3. package.lua第80行Lua錯誤:module 'Module:Citation/CS1/Identifiers' not found
  4. package.lua第80行Lua錯誤:module 'Module:Citation/CS1/Identifiers' not found
  5. package.lua第80行Lua錯誤:module 'Module:Citation/CS1/Identifiers' not found

外部連結[編輯]

  1. 重定向 Template:Official website

package.lua第80行Lua錯誤:module 'Module:Navbar/configuration' not found Template:GTK