https://bugs.documentfoundation.org/show_bug.cgi?id=155825

--- Comment #1 from Regina Henschel <[email protected]> ---
Created attachment 187900
  --> https://bugs.documentfoundation.org/attachment.cgi?id=187900&action=edit
reduced example

The error is in synchronizeColorStops in gradienttools.cxx in lines 440 to 454.

In both cases not only aNewAlpha (or aNewColor respectively), has to get the
stop but aNewColor (or aNewAlpha respectively) too. The both aNew... need to
grow simultaneously.

The situation in the example is, that the offsets for the colors are 0 and 0.9,
and for the transparency 0 and 1. The generated aNewColor and aNewAlpha both
need the stops 0, 0.9 and 1.

[Looking at the code, I'm not sure whether the combination of axial and linear
is handled correctly. (In the following the Number is the offset and the
characters are the values.)
Imagine a axial color gradient with 0 A, 1 B together with a linear
transparency gradient 0 X, 1 Y. Then the resulting stops should be 0 BX, 0.5 A
middle_of_XY, 1 BY. But because you apply axial after synchronizing you get 0
BY, 0.5 AX, 1 BY.
But I'm not sure and its after midnight so would need to look at it tomorrow
again.]

-- 
You are receiving this mail because:
You are the assignee for the bug.

Reply via email to