Cairo 是一个开源的图形库,为软件开发者提供了一个基于矢量图形、独立于设备的 API。Cairo 支持输出到一些不同的后端,后端支持包括 X11、Apple Quartz、Win32,以及 PNG、PDF、PostScript、DirectFB 和 SVG 等文件格式。
Cairo 被设计用来在所有的输出媒体上产生一致的输出,同时可以利用硬件加速的优势。
由于 Cairo 提供了跨平台支持,因此在开源社区中广受欢迎。其中包括 Firefox、WebKit、Mono、矢量图形应用 Inkscape,甚至是索尼的 PlayStation 都有在使用 Cairo,而且从 GTK 3 开始所有的渲染都是使用 Cairo 完成的。
虽然 Cairo 也曾实验性地支持 OpenGL,但如今相关代码已经被彻底删除,Cairo 不再支持 OpenGL。
在差不多一年前,Cairo 仓库中出现了一个名为 Drop cairo-gl(放弃 Cairo-gl)的合并请求,合并请求的描述则是写到:
Cairo 的 GL 支持一直是一个原型,在过去的 10 年里,没有发生任何事情使它能够如大家所期望的那样正常运作。
正是这样的原因让 Cairo 最终放弃了对 OpenGL 的支持,目前所有的 Cairo OpenGL 代码都已被删除,从下图可以看到,此次一共删除了 14014 行代码。
OpenGL 也成为了自 2022 年放弃 BeOS、OS/2 和 DirectFB 后端后,又一个 “上榜” 的项目。