cairo是一个2D库,在浏览器领域主要是mozilla firfox在用。
webkit实际上也有用到cairo,主要是efl,gtk等,但是在android上,webkit用的是skia。
因此在android要想用cairo就需要自己编译移植了。
android上有Bitmap,这个直接对应于cairo的image surface就可以用,
这个移植比较简单,主要是Bitmap是java的,cairo image surface是c++的,
所以要用到jni进行相应的交互调用,速度上还可以,以现在的arm频率,完全能满足非特效web。
2013年开始cairo对gles2的支持开始增加了,而且越来越好,
因此cairo也可以像skia一样直接调用gles2了。
但是要想在android上使用gles2ÿ