Skia簡介
Skia是一個開源的二維圖形庫,提供各種常用的API,并可在多種軟硬體平台上運作。谷歌Chrome浏覽器、Chrome OS、Fuchsia、安卓、Flutter、火狐浏覽器、火狐作業系統以及其它許多産品都使用它作為圖形引擎。Skia由谷歌出資管理,任何人都可基于BSD免費軟體許可證使用Skia。Skia開發團隊緻力于開發其核心部分, 并廣泛采納各方對于Skia的開源貢獻。
源代碼: skia.googlesource.com/skia
提議: bug.skia.org
skia官網:
https://skia.org谷歌github鏡像:
https://github.com/google/skiaSkui簡介
本人親測,采用Google官方提供的編譯方式很難成功。
偶然發現了skui這個開源項目。skui使用了skia庫。
Skia-based C++ UI framework
https://github.com/skui-org/skui https://blog.csdn.net/czhzasui/article/details/103457105因為編譯skui的過程,會編譯skia庫,殊途同歸,最終可以得到我想要的skia庫。
Skui編譯
下面描述編譯過程:
1、我的編譯環境:Win7 x64,VS2017
2、源碼下載下傳,注意Windows和Linux指令行的\和/的差別。
從github上克隆倉庫
git clone
https://github.com/skui-org/skui.git進入倉庫
cd skui
更新子子產品倉庫
git submodule update --init --recursive
如果網絡不好,可能會在拉取skia的時候卡住,這時候進入3rdparty目錄再次拉取
cd 3rdparty
cd ..
這樣就拉取了skui所有源碼。
如果實在還是拉取不成,那就直接點選github相關的連結,進入後,手動下載下傳。

點選進入“3rdparty”目錄,
進入頁面,使用頁面預設的版本,下載下傳skia源碼
3、源碼準備好,就可以編譯
mkdir ..\skui-build
cd ..\skui-build
接下來,可以選擇MSVC編譯,也可以選擇Ninja編譯
cmake ..\skui -G "Visual Studio 15 2017 Win64"
或者 cmake ..\skui -G Ninja
cmake --build .
筆者注:如果是使用MSVC編譯,個人建議還是使用cmake-gui.exe可視化的方式代替指令行。
MSVC編譯,請選擇Windows SDK v10.x版本,千萬不要選v8.1版本,否則編譯skia庫會失敗。
另外,cmake工程選項,使用預設值,不做任何修改。skia是靜态庫編譯,MDd/MD的運作時庫。
4、運作一下例程,是個很小的彈出視窗。
F:\tmp-source\qt-hmi\skia\skui-build>examples\widget_gallery\debug\widget_gallery.exe
5、關于widget_gallery.exe運作報異常的問題,我送出了issues
https://github.com/skui-org/skui/issues/12If you want to play around with the code as is, you can change gui/window_windows.c++:L29 to this:
const window_flags window::default_flags = window_flag::exit_on_close | window_flag::anti_alias;
---
https://ninja-build.org/ https://github.com/ninja-build/ninja https://blog.csdn.net/qq_20373723/article/details/84061647windows 安裝ninja