(trunk) Color Matrix 'adjust constant component RGB values' (last column) has no affect when applied to source alpha

Bug #897236 reported by Splex on 2011-11-28
16
This bug affects 3 people
Affects Status Importance Assigned to Milestone
Inkscape
Medium
Unassigned

Bug Description

On Inkscape stable, it is possible to add a constant value to the RGB channels when applying a 'Color Matrix' filter to 'source alpha.'
In trunk, the RGB rows of the last column have no effect on the output. Only the alpha (last row) works as intended.

Attached is an example:
The upper gradient is gray to transparent (#808080FF -> #80808000) with a Color Matrix filter with 'source alpha.' The matrix is:
1 0 0 0 1
0 1 0 0 0
0 0 1 0 0
0 0 0 1 0
(A constant value of 1 is added to red output channel)

The lower gradient is red to transparent (#FF0000FF -> #FF000000)

Intended Result:
On stable, the upper gradient appears like the lower.

Trunk:
The upper gradient is rendered as black fading to 100% transparent. The constants on the color matrix have no effect on the RGB channels.

Splex (splex) wrote :
su_v (suv-lp) on 2011-11-28
tags: added: filters-svg regression
su_v (suv-lp) wrote :

Not reproduced with Inkscape 0.48.2 and 0.48+devel r10325 (before the merge of cairo-rendering) on Mac OS X 10.5.8 (i386)
Reproduced with 0.48+devel r10330 and later revisions (up to current r10752).

Based on comparisons with other SVG renderers (Squiggle (Batik 1.7), Opera 11.52, recent Chromium snapshot (r111116)), Inkscape's new renderer seems to be wrong, and the old renderer does display such feColormatrix filter effects correctly.

Changed in inkscape:
importance: Undecided → Medium
status: New → Confirmed
tags: added: renderer-cairo
jazzynico (jazzynico) wrote :

Reproduced on Windows XP, Inkscape trunk revision 11652.

Changed in inkscape:
status: Confirmed → Triaged
su_v (suv-lp) on 2012-09-24
Changed in inkscape:
milestone: none → 0.49
jazzynico (jazzynico) wrote :

Also affects filters applied to background alpha.

Something wrong with ink_cairo_extract_alpha(), in src/display/cairo-utils.cpp?

su_v (suv-lp) on 2014-11-06
Changed in inkscape:
milestone: 0.91 → 0.92
To post a comment you must log in.
This report contains Public information  Edit
Everyone can see this information.

Other bug subscribers