skia库是什么

百度百科解释:
在这里插入图片描述
简单来说就是个二维的渲染引擎,用来绘制的。
从绘制效率比qt 与 cairo 都高。对于渲染效率要求高的,选用skia库还是很可以的。 且skia支持跨平台。

源码下载

skia库是google旗下的,官网在国内是访问不到的,需要梯子。

源码

不过代码可以在github上下载

https://github.com/google/skia

Depot-tools工具

https://github.com/coreos/depot_tools

下载完成解压后需要把depot-tools配置到环境变量中

python

安装python2.7,并添加python安装目录到系统环境变量。

源码编译

从github中下载的源码中,编译时需要三方库的支持以及一些依赖包,但是这个下载更新需要自备梯子。

具体操作是启动命令行cmd定位到skia目录下,再执行

python tools/git-sync-deps

等待执行完成。

修改 skia\gn|BUILDCONFIG.gn文件 win_vc = “C:/Program Files (x86)/Microsoft Visual Studio/2017/Enterprise/VC”

android

在skia目录下执行命令

bin\gn gen out\arm18 --args="is_component_build=true target_os=\"android\" is_debug=false  ndk_api=21  ndk=\"F:/android-ndk-r18b-windows-x86_64/android-ndk-r18b\" target_cpu=\"arm64\""

生成完成后再执行编译

ninja -C out/arm18

参数说明
out\arm18 生成的位置
is_conponent_build true 表示动态库编译,否则是静态库编译
target_os 目标系统
id_debug 是否是debug模式
ndk_api 最低支持的ndkapi版本
ndk ndk的路径
target_cpu 目标cpu

linux

linux下生成基本跟window下一样,需要将depot-tools加入环境变量,然后执行

python tools/git-sync-deps

需要生成gn才能进行下一步在这里插入图片描述

编译

bin/gn gen out/Shared3 --args="is_debug=false is_component_build=false skia_use_angle=false skia_use_expat=true"   

ninja -C out/Shared3 

在这里插入图片描述

Logo

为开发者提供学习成长、分享交流、生态实践、资源工具等服务,帮助开发者快速成长。

更多推荐