Cairo

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

cairo
原作者基思·帕卡德卡尔·沃思[1]
開發者卡尔·沃思贝赫达德·埃斯法赫博德
当前版本
  • 1.18.0 (2023年9月23日;穩定版本)[2]
源代码库
编程语言C语言
操作系统跨平台
类型图形库
许可协议GNU宽通用公共许可证版本2.1或是Mozilla公共许可证版本1.1
网站www.cairographics.org/ 编辑维基数据

後端

Cairo支持很多不同後端的输出,在实现中被称作“surface”。支持的后端包括X Window系统、Win32 GDI、Quartz Compositor、OS/2OpenGL环境(直接或间接地通过glitz)、内存缓冲区、PNGPDFPostScript、DirectFB和SVG文件。

还有一些开发中的后端如:OpenVG,QtSkia和Windows Direct2D。[5]

知名應用

因为能够提供高级的跨平台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项目[6]。它原本(直到2003年)被称做Xr或Xr/Xc。为了加强跨平台而非被局限在X Window平台绘图的印象,项目更换了名称。Xr经被解释为希腊字母chirho派生出新名称cairo。

相似的技術

Cairo大抵相似於微軟WPFGDI+蘋果公司的Quartz 2D、Anti-Grain Geometry(AGG)。

相關條目

參考資料

  1. . cworth.org. 2013 [11 July 2014]. (原始内容存档于2014-05-17).
  2. . 2023年9月23日 [2023年9月24日].
  3. . [2010-10-30]. (原始内容存档于2011-02-23).
  4. . [2014-04-16]. (原始内容存档于2011-05-17).
  5. Bas Schouten. . 2009-11-22 [2010-02-12]. (原始内容存档于2010-02-10).
  6. . [2009-06-08]. (原始内容存档于2009-06-14).

外部連結

This article is issued from Wikipedia. The text is licensed under Creative Commons - Attribution - Sharealike. Additional terms may apply for the media files.