Comment 7 for bug 202704

Revision history for this message
Peter Moulder (pjrm) wrote :

Some preliminary thoughts:

The x,y standard deviations of the gaussian blur can be seen as defining an ellipse (which is a contour of the blurring). If, after affine transformation, this ellipse is still a circle or an "axis-parallel ellipse" (i.e. something one can draw with the ellipse tool without applying transformations), then the transform of the blur of the object can be done as a blur of the transform of the unblurred object, where the x,y standard deviations of this blur are the x,y "radius" lengths of the transformed ellipse.

If, rather, the axes of the transformed ellipse aren't horizontal & vertical in the rendered bitmap, then one can shear the object in the opposite direction (i.e. the inverse of the shear) in each dimension, then blur, then shear back. However, the problem is that one ought to render to "sheared pixels" for the pixels to be square again after shearing back. If we instead render to square pixels before shearing back, then this approach is lossy. However, the loss shouldn't be noticeable if the blur standard deviation is many pixels.