Comment 9 for bug 1229971

Revision history for this message
Alvin Penner (apenner) wrote :

that is correct. If you draw a horizontal line and apply a blur, it will stay narrow regardless of the stroke, and will also stay narrow even if you rotate the line. Similarly if you draw a line at 45 degrees and give it a wide stroke and apply a blur, the blur will remain wide even if you then rotate the line to be exactly horizontal. I think that what is happening is that the filter properties , height, width are defined once, on the initial draw, they are then transferred into the defs section and never again modified even if you rotate the line.
      As far as I can see, this bug report and Bug 168943 are fundamentally incompatible with each other. They cannot both be resolved at the same time. The problem goes back to the manner in which the filter area is defined. The filter dimensions (x,y) are defined as a dimensionless number which must be multiplied by the bbox. This means that if you use a geometric bbox you will satisfy this bug report and break Bug 168943. And if you use a visual bbox then the opposite happens.
     As far as I am concerned this is a deficiency in the svg spec. The svg spec should allow for the possibility of both an offset and a scale factor so that the filter width would be a + bx where x is the width of the bbox and a and b are both adjustable. b already exists, but the new a could play the role of the stroke width if desired.
   I think the problem is that a lot of filters are meant to be applied as rectangular backgrounds which work on the fill, not the stroke. But blur is most interesting when it works on the stroke not the fill. In any event, I think the svg group should consider thinking about this problem because the current situation is quite dissatisfying.