Infatuated with truth

tiled backing store)。

如上静态类图所示,只有实现了分片底衬仓库客户端(TiledBackingStoreClient)的接口的WebCore::Frame才拥有分片底衬仓库实例。其他类只能通过WebCore::Frame发消息给分片底衬仓库。QGraphicsWebView是QGraphicsWidget的子类. 它被用于显示屏幕上的可见内容。3.1 按照内容重置QGraphicsWebView的大小(Resize to Content) resizesToContents(布尔变量)是QGraphicsWebView的属性。 当使用分片策略时, QGraphicsWebView用来充当我们的内容,它应当按照main frame内容立即重置自己的大小。 如Qt4.7文档所说, 如果设置此属性, QGraphicsWebView将自动按照main frame的尺寸设置自己的大小。结果就是,,顶层的frame绝不会有滚动条。这样就会使得CSS的定点定位(fixed positioning)看起来就像是绝对定位(absolute positioning)–元素相对文档而不是视图端口定位。 如果resizesToContents设置为true, 一旦Frame的内容发生改变,WebCore::FrameView 就会通知QGraphicsWebView去更新自己的大小。3.2 绘制过程

以下是绘制QGraphicsWebView所需步骤:

需要这样的可见区域。确保整个可见区域被瓦片覆盖。对于那些没有被瓦片覆盖的可见区域, 它将重复创建最靠经视图端口中心的瓦片,直到所有可见区域被覆盖。距离的计算方法是基于Manhattan距离算法(Manhattan distance)。 为了尽可能不阻塞绘制操作,瓦片创建采用异步执行方式,在分片底衬仓库里,异步方式是通过定时器实现的:startTileCreationTimer.把frame的内容绘制到每一个瓦片的后缓冲区,通过这样的方式来更新瓦片,当然因为同样原因更新也是异步方式。由Qt画笔的drawPixmap函数来绘制后缓冲区

原文:

接受自己的失败面,是一种成熟,更是一种睿智

Infatuated with truth

相关文章:

你感兴趣的文章:

标签云: