def _cairo_surface_extents(surface):
if surface == None:
return False
cr = cairo.Context(surface)
x1, y1, x2, y2 = cr.clip_extents()
x1 = floor(x1)
y1 = floor(y1)
x2 = ceil(x2)
y2 = ceil(y2)
x2 -= x1
y2 -= y1
extents = cairo.RectangleInt()
extents.x = x1
extents.y = y1
extents.width = x2
extents.height = y2
return extents
评论列表
文章目录