Skia Graphics Engine

Skia Graphics Engine — кроссплатформенная открытая библиотека для работы с двумерной графикой, написанная на языке C++. Skia абстрагирует особенности графических API разных платформ, позволяя разработчикам работать на различных операционных системах с единым интерфейсом[1]. Библиотека была изначально разработана компанией Skia Inc., которую в 2005 году приобрела Google[2]. В 2008 году Skia стала распространяться по свободной лицензии New BSD License.

Общие сведения
Skia Graphics Engine
Тип библиотека для работы с графикой
Автор Skia Inc.
Разработчик Google
Написана на C++
Операционные системы Android, iOS, Linux, macOS, Windows
Репозиторий skia.googlesource.com/sk…
Лицензия New BSD License
Сайт skia.org

История

Компания Skia Inc., разработчик Skia Graphics Engine, была основана в 2004 году Майком Ридом и Кэри Кларком в Чапел-Хилл, Северная Каролина. В 2005 году её приобрела Google[3].

Этимология

«Skia» — латинизация греческого слова «тень» (Σκιά).

Обзор

Для обеспечения мультиплатформенности Skia поддерживает несколько аппаратно- и программно-зависимых бэкендов, включая:

  • программную растеризацию на CPU;
  • генерацию вывода в PDF;
  • аппаратно-ускоренный рендеринг через:[4]
    • бэкенд ANGLE, реализующий преобразование вызовов OpenGL ES в нативные API вендоров;
    • Vulkan и Metal;
  • поддержку формата SVG;
  • экспорт в XML Paper Specification (XPS).

По своему назначению Skia ближе всего к библиотекам вроде Cairo или Pathfinder (главная задача — вывод графики), а не к более комплексным API с поддержкой виджетов и языков описания UI, таким как Qt[5].

Применение

По состоянию на 2023 год библиотека применяется, в частности, в Google Chrome, ChromeOS, ChromiumOS, Mozilla Firefox, Mozilla Thunderbird, Android, Firefox OS, Flutter, Ladybird[6], Avalonia (с Alpha 4), LibreOffice (с версии 7.0), RAD Studio[7] (начиная с версии 12.0).

Поддерживаемые платформы

  • Windows 10 и 11
  • macOS 10.15 и новее
  • iOS 12 и новее
  • Android 4.3 (JellyBean) и новее
  • Ubuntu 18.04+, Debian 10+, openSUSE 15.2+, Fedora Linux 32+
  • веб-браузеры[8]

Примечания

  1. Skia Graphics Library. skia.org. Дата обращения: 1 ноября 2020. Архивировано 17 января 2019 года.
  2. Malik, Om Google Open Sources Skia Graphics Engine (англ.). gigaom (2 сентября 2008). Дата обращения: 31 августа 2011. Архивировано 24 января 2013 года.
  3. Inside Google's Chapel Hill outpost: A growing success story (англ.). WRAL TechWire (24 мая 2017). Дата обращения: 27 октября 2021.
  4. Specialized Builds (англ.). Skia. Дата обращения: 18 января 2022.
  5. The Skia 2D Graphics Library From Google - Phoronix (англ.). www.phoronix.com. Дата обращения: 19 апреля 2018. Архивировано 20 апреля 2018 года.
  6. Skia Documentation (англ.). skia.org. Дата обращения: 20 апреля 2023.
  7. RAD Studio. embarcadero.com. Дата обращения: 1 июня 2023.
  8. CanvasKit - Skia + WebAssembly (англ.). skia.org. Дата обращения: 3 сентября 2021.