[cairo] problem with large scale gradients

Danilo Gulamhussene danilo at impara.de
Fri Oct 26 07:06:05 PDT 2007


Hello again,

We want to make drawing calls in an extremely small unit (cTwip = (1/127 
twip = 1/20 point = 1/1440 inch), that allows for integer conversion 
between metric and imperial measure). Thus we have a very small scaling 
factor on the surface (about 1/2540) for conversion and we invoke 
drawing calls with extreme large numbers (about 2540 to several millions).

All drawing works fine with this setup, except for gradients (tested on 
windows xp with image surface and window surface).

I have attached a small test program, that generates gradients with 
different scales.
Resulting images are also available at:
http://www.impara.de/~danilo/Download/gradients.zip

Already after small changes to the scale factor, the images are not 100% 
identical.
The change from scale 32 to 64 starts to be visually apparent and from 
there the gradient looses its shape and drifts off.

I also recognized, that creating such large scale gradients by using 
cairo_pattern_set_matrix() worked fine.

Do you have any hints, what the problem is?

thanks in advance,

Danilo


-------------- next part --------------
An embedded and charset-unspecified text was scrubbed...
Name: largeScaleGradientsTest.c
Url: http://lists.cairographics.org/archives/cairo/attachments/20071026/8d538a9c/attachment.txt 


More information about the cairo mailing list