cairo
cairo — програмна бібліотека, використовувана для реалізації векторної графіки, з апаратно незалежним API. cairo дозволяє створювати примітиви у двомірному просторі через різні вихідні буфери. cairo дозволяє використовувати апаратне прискорення, коли це можливо. cairo є вільним програмним забезпеченням під подвійною ліцензією LGPL та Mozilla Public License (MPL).
Тип | Графічна бібліотека |
---|---|
Розробники | Карл Уорт і Behdad Esfahbod |
Стабільний випуск | 1.12 (23 березня 2012 ) |
Операційна система | Багатоплатформова |
Мова програмування | C[1] |
Ліцензія | GNU Lesser General Public License версії 2.1 (тільки) або Mozilla Public License 1.1 |
Репозиторій | gitlab.freedesktop.org/cairo/cairo |
Вебсайт | cairographics.org |
Особливістю cairo є підтримка формування 2D-графіки, використовуючи різні механізми виведення, від стандартного виводу на екран через X Window System, Quartz і Win32, до генерації PostScript, PDF, SVG і задіяння OpenGL, XCB і DirectFB. При цьому бібліотека забезпечує уніфікований інтерфейс для формування зображень, незалежно від використовуваного бекенда виводу. API бібліотеки надає функції, що нагадують оператори малювання PostScript і PDF, доповнені можливостями трансформації зображень (масштабування, поворот, обертання тощо), створення напівпрозорих об'єктів і рендеринга тексту.
Попри те, що cairo написаний на С, існують засоби для його використання на багатьох інших мовах програмування, включно з C++, C#, Common Lisp, Haskell, Java, Python, Perl, Ruby, Smalltalk та інших.[2]
Історія
ред.Проєкт cairo був заснований Кейтом Пакардом та Карлом Уортом для використання у X Window System. Спочатку він називався Xr або Xr/Xc. Назва була змінена для того, щоб підкреслити що це багатоплатформова бібліотека, не прив'язана до серверу X. Назва «cairo» була отримана від первісної назви Xr, відповідно до лігатури в Юнікоді Chi Rho. Перший склад оснований на візуальній схожості літери X та грецької літери Chi, другий склад заснований на схожості вимови літери r та грецької літери Rho.[3]
Backends
ред.cairo підтримує вивід через велику кількість графічних систем. Серед них X Window System, Win32 GDI, Mac OS X Quartz, BeOS API, OS/2, контексти OpenGL (через glitz), локальні графічні буфери, PNG-файли, PDF, PostScript та SVG.
Програмний інтерфейс для рисування двомірної графіки, реалізований у вільній бібліотеці cairo, запропонований для включення до складу майбутнього стандарту ISO C++.[4] Бібліотека, написана однією мовою програмування, може використовуватися іншою мовою, якщо написано прив'язки; cairo має цілий ряд прив'язок для різних мов, включаючи C ++, C# та інші мови CLI, Delphi, Eiffel, Factor, Harbor, Haskell, Julia, Lua, Perl, PHP, Python, Ruby, Rust, Schame, Smalltalk та декількох інших, як Гамбас (Visual Basic, як).[5]
Відомі використання
ред.cairo набув популярності у спільноті відкритих сирцевих кодів за надання багатоплатформової підтримки для просунутого двомірного креслення.
GTK+, починаючи з версії 2.8 2005 року, використовує cairo для рендерингу більшості своїх віджетів.
Проєкт Mozilla почав використовувати cairo в останніх версіях рушія виводу Gecko, для рендерингу графічного змісту продуктів Mozilla. Gecko 1.8. рушій виводу у Mozilla Firefox 2.0 та SeaMonkey 1.0, використовує cairo для рендерингу SVG та Canvas. Gecko 1.9 в основі Firefox 3 використовує cairo для рендерінгу і змісту вебсторінок, і користувацького інтерфейсу.
Схожі технології
ред.cairo конкурує із такими схожими технологіями, як WPF та GDI+ від Microsoft та Quartz 2D від Apple Computer.
Виноски
ред.- ↑ The cairo Open Source Project on Open Hub: Languages Page — 2006.
- ↑ Архівована копія. Архів оригіналу за 6 червня 2017. Процитовано 14 вересня 2007.
{{cite web}}
: Обслуговування CS1: Сторінки з текстом «archived copy» як значення параметру title (посилання) - ↑ Mailing list thread about the cairo name change. Архів оригіналу за 25 червня 2013. Процитовано 14 вересня 2007.
- ↑ В стандарт C++ предложено добавить API на основе свободной графической библиотеки Cairo [Архівовано 1 квітня 2014 у Wayback Machine.] // opennet.ru 05.01.2014
- ↑ Language bindings. www.cairographics.org. Процитовано 31 серпня 2022.
Посилання
ред.- Офіційний вебсайт [Архівовано 23 лютого 2011 у Wayback Machine.]
- Cairo here, there and everywhere. Linux.Ars. Ars Technica. Архів оригіналу за 25 червня 2013. Процитовано 14 вересня 2007.