QtSkia
github repo https://github.com/QtSkia/QtSkia
gitee mirror https://gitee.com/QtSkia/QtSkia
catalogue
Introduction
Skia
Skia is an open source 2D graphics library which provides common APIs that work across a variety of hardware and software platforms. It serves as the graphics engine for Google Chrome and Chrome OS, Android, Mozilla Firefox and Firefox OS, and many other products.
Skia is sponsored and managed by Google, but is available for use by anyone under the BSD Free Software License. While engineering of the core components is done by the Skia development team, we consider contributions from any source.
-
Canonical source tree: skia.googlesource.com/skia.
-
Issue tracker: bug.skia.org.
-
Discussion forum: [email protected].
-
API Reference and Overview: skia.org/user/api.
-
Skia Fiddle: fiddle.skia.org.
-
github mirror: https://github.com/google/skia.git
QtSkia
QtSkia is an open source 2D graphics library which integration skia with qt's render framework.
QtSkia provide connection with QWidget、QOpenGLWidget、QQuickWindow、QQuickItem。
Qt developer can import skia to qt easily。
CI Badge
Windows | MacOS | Ubuntu | Android | IOS |
---|---|---|---|---|
License | Release | Download | Issues | Wiki |
---|---|---|---|---|
Feature show
Shapes
Bezier Curves
Translations and Rotations
Text Rendering
Discrete Path Effects
Composed Path Effects
Sum Path Effects
Shaders
QtSkia use example
Scheduled plan
- code mirror
- skia code mirror
- 3rdparth mirror
- auto sync upstream code
- local script for fetch code
- Compile and ci
- specific compile flow with qmake
- Windows platform compile.
- MacOS compile
- Linux compile
- Android
- effect
- sample text,line
- Skia inner effect
- texture
- Lottie
- Qt Framework adapted
- Gui
- QOpenGLWindow
- QWindow
- QVulkanWindow
- Widget
- QWidget CPURaster
- QOpenGLWidget
- Quick
- QOuickWindow
- QQuickItem
- QQuickFrameBuffer
- Qt6 RHI
- under construction
- performance test
- under construction
Build
dependency library
python 2
Qt 5.12.x 64-bit
Note:32bit/x86 arch, need the toolchain by google, QtSkia not suooprt,detail info can be found in: https://skia.org/user/build
windows
Compiler need vs2017 and about, clang-cl is better.
MacOS
under construction
Android
under construction
Linux
under construction
code download
- Downlaod QtSkia
git clone https://github.com/QtSkia/QtSkia.git
China user can use gitee mirror for speed up.
git clone https://gitee.com/QtSkia/QtSkia.git
- Download skia and 3rdparty
run script 'syncSkia' at root directory of QtSkia.
China user can use syncSkia-gitee replace for speed up from gitee mirror.
Windows platform click run syncSkia.bat, or termianl run:
cd QtSkia
syncSkia.bat
MacOS or linux platform, termianl run:
cd QtSkia
chmod a+x syncSkia.sh
./syncSkia.sh
skia and 3rdparty explain
skia origin site: https://skia.googlesource.com/skia
github mirror: https://github.com/google/skia
skia depend on many thrid library. (about 28+)
QtSkia provite mirror on github、gitee, detail on:
QtSkia use script auto sync these code from upstream on timer。
QtSkia not edit there code,just add github、gitee mirror support and compiler support.
compile
use QtCreator import QtSkia.pro
or run qt commandline:
qmake
make
Code struct
directory | descript |
---|---|
3rdparty | skia and depency library |
doc | document |
examples | examples |
QtSkia | QtSkia |
skiaBuild | Qt qmake compile skia |
Sponsor
If you feel the share content is good, treat the author a drink.
it's WeChat Pay and Alipay