copy_clip_rectangle_list#

Returns the current clip region as a plain list of hash references, each with the keys x, y, width and height in user space.

for my $rect ($cr->copy_clip_rectangle_list) { printf “%g %g %g %g\n”, @$rect{qw(x y width height)}; }

A clip that cannot be expressed as a list of rectangles makes the call die with $@ set to a status name such as 'clip-not-representable', so wrap it in eval when the clip may come from arbitrary paths. Needs cairo 1.4 or newer; on an older library the call dies saying so. Wraps cairo_copy_clip_rectangle_list.