calc65: #i116318# Fixed the painting of axial gradients.

This commit is contained in:
Andre Fischer<andre.f.fischer
2011-01-13 16:25:57 +01:00
parent 3d3105c8d4
commit 846c70417e

View File

@@ -682,10 +682,23 @@ namespace cppcanvas
case GRADIENT_AXIAL:
{
basegfx::tools::createLinearODFGradientInfo(aGradInfo,
// Adapt the border so that it is suitable
// for the axial gradient. An axial
// gradient consists of two linear
// gradients. Each of those covers half
// of the total size. In order to
// compensate for the condensed display of
// the linear gradients, we have to
// enlarge the area taken up by the actual
// gradient (1-fBorder). After that we
// have to turn the result back into a
// border value, hence the second (left
// most 1-...
const double fAxialBorder (1-2*(1-fBorder));
basegfx::tools::createAxialODFGradientInfo(aGradInfo,
aBounds,
nSteps,
fBorder,
fAxialBorder,
fRotation);
// map odf to svg gradient orientation - x
// instead of y direction