cairo(カイロ)は、デバイスに依存しないベクトルベースの描画APIを提供する、自由ソフトウェアの2Dグラフィックスライブラリである。アンチエイリアスがかかった綺麗な表示が特徴である。直線、矩形、円弧の他、ベジェ曲線や文字の描画も可能である。半透明描画、マスクやグラデーション機能がある。ソフトウェアによるテセレーションが基本だが、可能な場合にはハードウェアアクセラレーションを利用するよう設計されている。
歴史 キース・パッカード、カール・ワースらによって、X Window Systemに利用するために開発が始められた。当初はXr・Xr/Xcと呼ばれていたが、後にcairoへと変更された。クロスプラットフォームでXに依存しないライブラリである点を強調することを意図したものである。
バックエンド 出力バックエンドとしてX Window System(XlibとXCB)、GDI (Microsoft Windows)、Quartz (macOS)、イメージバッファ、PostScript、PDF、SVGをサポートしている。実験的にOpenGL、OpenGL ES 2.0、OpenVG、BeOS、OS/2、DirectFBをサポートしている。
バインディング C言語が基本APIだが、Ada、C++、Common Lisp、Factor、Haskell、Java、Lua、Monoと.NET、Perl、PHP、Python、Ruby、Scheme、Smalltalkなどのバインディングが存在するLanguage bindings。
採用例 GTK - バージョン2.8以降、cairoを用いてWidgetの描画を行っている。 Mozilla, Firefox - レンダリングエンジンGeckoの描画にcairoを採用。 Poppler - cairo を用いたPDF描画ライブラリ。 OpenOffice.org GIMP GNU Emacs - バージョン28.1でCairoを採用
関連項目 Skia - Google Chrome や Android で使用
参照
外部リンク