2D图形处理引擎 skia

fmms 12年前

skia是个2D向量图形处理函数库,包含字型、座标转换,以及点阵图都有高效能且简洁的表现。不仅用于Google Chrome浏览器,新兴的Android开放手机平台也采用skia作为绘图处理,搭配OpenGL/ES与特定的硬体特征,强化显示的效果

自2005年Skia被Google收购后,一直相当神秘低调,直到2007年初,Skia GL相关的程式码才被揭露,作为Google Android平台的图形引擎,稍候的Google Chrome浏览器也采用Skia引擎。随着Android与Chrome (开放版本称为"Chromium")两大专案公布程式码后,skia也一并公开原始程式码,以Apache License v2释出(注意,这意味着与GPLv2授权不相容) ,而Android与Chrome的程式码库中都有一份[skia]的复制,因需求不同,做了部份的修改,比方说Chrome专案底下的 [chrome/trunk/src/skia],需要注意的是,Skia本身是不涉及底层环境,如Linux Framebuffer或Gtk+衔接的处理,这也是何以Android (透过Linux Framebuffer)与Chrome (开发中的Linux版本使用Gtk+)需要提供一份修改,以便系统接轨。

Skia is a complete 2D graphic library for drawing Text, Geometries, and Images. Features include:

  • 3x3 matrices w/ perspective
  • antialiasing, transparency, filters
  • shaders, xfermodes, maskfilters, patheffects

Device backends for Skia currently include:

  • Raster
  • OpenGL
  • PDF

项目主页:http://www.open-open.com/lib/view/home/1328671482562