[cairo] Road map for remaining pixman refactoring

Bill Spitzak spitzak at thefoundry.co.uk
Tue Jun 2 03:51:30 PDT 2009


Soeren Sandmann wrote:

> * Fix clipping
> 
> Clipping will be computed up front in pixman_compute_composite_region();
> the rest of the code will not be concerned with clipping at all. This
> has some consequences:

I still very much feel that the filtering should not be producing black 
pixels.

When the repeat is set to black, Cairo should produce a result 
equivalent to setting the clip region to the transform of the rectangle 
surrounding the source image and then filtering the image as though the 
edge pixels are repeated.

The difference is that if you zoom in the image, the edge is a sharp 
anti-aliased straight line, rather than a blur the size of the zoom factor.

This is what all users expect when they draw a transformed (especially 
rotated) images. Anybody who really wants the current blurry result can 
achieve this by adding a row of black pixels all around the edge of 
their source image.

It is also needed to avoid double-multiply artifacts when the user sets 
the clip to a region that lines up with the edge of the source image.

-- 
Bill Spitzak, Senior Software Engineer
The Foundry, 1 Wardour Street, London, W1D 6PA, UK
Tel: +44 (0)20 7434 0449 * Fax: +44 (0)20 7434 1550 * Web: 
www.thefoundry.co.uk
The Foundry Visionmongers Ltd * Registered in England and Wales No: 4642027



More information about the xorg-devel mailing list