Establishes a new clip region by intersecting the current clip
region with the current path as it would be filled by
fill() and according to the current fill rule
(see setFillRule()).
Unlike clip(), clipPreserve() preserves the
path within the cairo context.
The current clip region affects all drawing operations by
effectively masking out any changes to the surface that are
outside the current clip region.
Calling clipPreserve() can only make the clip region
smaller, never larger. But the current clip is part of the
graphics state, so a temporary restriction of the clip region
can be achieved by calling clip() within a save()/restore()
pair. The only other means of increasing the size of the clip
region is resetClip().
Establishes a new clip region by intersecting the current clip region with the current path as it would be filled by fill() and according to the current fill rule (see setFillRule()).
Unlike clip(), clipPreserve() preserves the path within the cairo context.
The current clip region affects all drawing operations by effectively masking out any changes to the surface that are outside the current clip region.
Calling clipPreserve() can only make the clip region smaller, never larger. But the current clip is part of the graphics state, so a temporary restriction of the clip region can be achieved by calling clip() within a save()/restore() pair. The only other means of increasing the size of the clip region is resetClip().