This class provides low level area clipping routines.
Before using the clipper class take a look at the high level Surface::clip(const Area &clip) function.
Typically the only time the clipper class is required is when you are managing your own pixel buffers and performing clipping manually.
[static]
Clip the area area to the clipping area clip and returns the result.
[static]
Clip the source area source to the source clip area clip_source, then clips the destination area destination to the destination clip area clip_destination.
This clip assumes that the source and destination areas are dependent, so when the source area is clipped, the destination area is adjusted to compensate and vice versa.
This clipping routine also correctly handles cases where the source and destination areas involve stretching.
The resulting clipped areas are assigned to the clipped_source and clipped_destination parameters.