Cairo

来自Local Chinese Wikipedia
跳转到导航 跳转到搜索

package.lua第80行Lua错误:module 'Module:Arguments' not found Template:Hatnote

页面Module:Infobox/styles.css没有内容。

cairo
脚本错误:没有“InfoboxImage”这个模块。
脚本错误:没有“InfoboxImageVariant”这个模块。
原作者基思·帕卡德卡尔·沃思[1]
开发者卡尔·沃思贝赫达德·埃斯法赫博德
当前版本Template:Software version
源代码库页面Template:Plainlist/styles.css没有内容。Template:EditAtWikidata
编程语言C语言
引擎页面Template:Plainlist/styles.css没有内容。
    脚本错误:没有“Wd”这个模块。
Template:EditAtWikidata
操作系统跨平台
类型图形库
许可协议GNU宽通用公共许可证版本2.1或是Mozilla公共许可证版本1.1
网站脚本错误:没有“WikidataIB”这个模块。
脚本错误:没有“Template wrapper”这个模块。

脚本错误:没有“Check for unknown parameters”这个模块。

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. 脚本错误:没有“citation/CS1”这个模块。
  2. 脚本错误:没有“citation/CS1”这个模块。
  3. 脚本错误:没有“citation/CS1”这个模块。
  4. 脚本错误:没有“citation/CS1”这个模块。
  5. 脚本错误:没有“citation/CS1”这个模块。

外部链接[编辑]

  1. 重定向 Template:Official website

package.lua第80行Lua错误:module 'Module:Arguments' not found Template:GTK