The Skia Graphics Engine or Skia is an
open-source 2D
graphics library written in
C++. Skia abstracts away platform-specific graphics APIs (which differ from one to another). Skia Inc. originally developed the library;
Google
Google LLC (, ) is an American multinational corporation and technology company focusing on online advertising, search engine technology, cloud computing, computer software, quantum computing, e-commerce, consumer electronics, and artificial ...
acquired it in 2005,
and then released the software as open source licensed under the
New BSD free software license in 2008.
Overview
In order to stay multi-platform, Skia supports several (platform-dependent) back-ends. These include:
* CPU software
rasterization
*
Portable Document Format
Portable document format (PDF), standardized as ISO 32000, is a file format developed by Adobe in 1992 to present documents, including text formatting and images, in a manner independent of application software, hardware, and operating syste ...
(PDF) output
*
GPU-accelerated rendering by using:
**
ANGLE
In Euclidean geometry, an angle can refer to a number of concepts relating to the intersection of two straight Line (geometry), lines at a Point (geometry), point. Formally, an angle is a figure lying in a Euclidean plane, plane formed by two R ...
backend, which translates
OpenGL ES
OpenGL for Embedded Systems (OpenGL ES or GLES) is a subset of the OpenGL computer graphics rendering application programming interface (API) for rendering 2D and 3D computer graphics such as those used by video games, typically hardware-accelerate ...
calls into vendor's native APIs
**
Vulkan, and
Metal
A metal () is a material that, when polished or fractured, shows a lustrous appearance, and conducts electrical resistivity and conductivity, electricity and thermal conductivity, heat relatively well. These properties are all associated wit ...
.
*
Scalable Vector Graphics (SVG)
*
XML Paper Specification
Open XML Paper Specification (also referred to as OpenXPS) is an open specification for a page description language and a fixed-document format. Microsoft developed it as the XML Paper Specification (XPS). In June 2009, Ecma International adopte ...
(XPS)
Skia is most similar in purpose to
Cairo
Cairo ( ; , ) is the Capital city, capital and largest city of Egypt and the Cairo Governorate, being home to more than 10 million people. It is also part of the List of urban agglomerations in Africa, largest urban agglomeration in Africa, L ...
or Pathfinder (meaning that it focuses on drawing) rather than to other more elaborate APIs like that of
Qt that provide their own widgets and UI description language etc.
Application
The library is used in
Google Chrome
Google Chrome is a web browser developed by Google. It was first released in 2008 for Microsoft Windows, built with free software components from Apple WebKit and Mozilla Firefox. Versions were later released for Linux, macOS, iOS, iPadOS, an ...
,
ChromeOS,
ChromiumOS,
Mozilla Firefox,
Mozilla Thunderbird
Mozilla Thunderbird is a free and open-source email client that also functions as a personal information manager with a Digital calendar, calendar and contactbook, as well as an RSS feed reader, chat client (IRC/XMPP/Matrix (protocol), Matrix), ...
,
Android,
Firefox OS,
Flutter,
Ladybird Avalonia (from Alpha 4),
LibreOffice (from version 7.0) and
RAD Studio(since version 12.0).
Supported platforms
* Windows 10, 11
* macOS 10.15 or later
* iOS 12 or later
* Android 4.3 (JellyBean) or later
* Ubuntu 18.04+, Debian 10+, openSUSE 15.2+, or Fedora Linux 32+
* Web Browsers
Etymology
Skia is a romanisation of the word 'shadow' in Greek (Σκιά).
History
Skia Inc, developers of the Skia Graphics Engine, was founded in 2004 by Mike Reed and Cary Clark in Chapel Hill North Carolina, before being acquired by Google in 2005.
See also
*
Direct2D
*
Starling Framework
*
Anti-Grain Geometry
*
CoreGraphics
*
Cairo
Cairo ( ; , ) is the Capital city, capital and largest city of Egypt and the Cairo Governorate, being home to more than 10 million people. It is also part of the List of urban agglomerations in Africa, largest urban agglomeration in Africa, L ...
*
QuickDraw GX
References
External links
*
Skia & Freetype – Android 2D Graphics EssentialsPathfinder 3
YouTube
* {{YouTube, OmfliNQsk88, Skia Path Ops : High Performance Set Operations for Geometry
Google Developers: Painting in Chromium 2012 on YouTube
Google acquisitions
Graphics libraries
Software using the BSD license