1. Skia developed for Android:
* Windows : Skia + "Chromium Win"
* Linux : Skia + "Chromium Linux"
* Mac : mostly matches Safari,doesn't use Skia

2. GraphicsContext represents a generic drawing surface.
Implementation split into two parts:
* GraphicsContext.cpp : Cross-platform code
* GraphicsContext[Skia|Mac].cpp : Platform-specific
Shared header with #ifdefs,only one object

3. Fonts
* Font.cpp
* FontChromiumWin.cpp
* FontLinux.cpp
* FontMac.mm
Fast path for simple text
* GlyphPageTreeNode : Font,Character -> Font,Glyph
* GlyphWidthMap : Glyph -> Width
Complex path (Arabic,Indic)
* Uniscribe,ATSUI,Harfbuzz

4. Images
* Image.cpp
* ImageSkia.cpp
* ImageMac.cpp
Hooks in all image decoders
2 level memory cache
* Decoded (uncompressed) data
* Encoded (compressed) data

5. Painting in Test Shell(Win/Linux)
* Get an "invalid rect" from the OS
* Make a skia::PlatformCanvas,setup transform
(wraps a SkCanvas to integrate with the OS)
* Create a GraphicsContextSkia with the bitmap
* WebKit paints into the canvas
* Copy canvas to invalid area on screen

6. Painting in Chrome
Browser and renderer must run asynchronously
* Browser maintains a "backing store" of the tab
* renderer paints get copied into this backing store
RenderWidget,RenderWindgetHost handle paint & input
RenderView inherits from RenderWidget to represent a "web page"
















更多相关文章

  1. 代码中设置drawableleft
  2. android 3.0 隐藏 系统标题栏
  3. Android开发中activity切换动画的实现
  4. Android(安卓)学习 笔记_05. 文件下载
  5. Android中直播视频技术探究之—摄像头Camera视频源数据采集解析
  6. 技术博客汇总
  7. android 2.3 wifi (一)
  8. AndRoid Notification的清空和修改
  9. Android中的Chronometer

随机推荐

  1. android中的数据存取 之 File
  2. Android-使用OpengGL实现的Canvas进行绘
  3. [置顶] Android必须知道的框架-NoHttp
  4. 安卓SDK接入Unity
  5. Android(安卓)SMS 短信读取 SQLite 保存
  6. Android开发配置篇——Eclipse配置
  7. Android(安卓)样式 :shape selector 篇
  8. Android类参考---Manifest.permission_gr
  9. Android(安卓)CoordinatorLayout+AppBarL
  10. Android(安卓)onNewIntent的应用