Since we cannot make blend modes work correctly over transparent backgrounds within the confines of SVG, we will need a good workaround. The problems are, unfortunately, extremely user-visible.
The best idea I've been able to come up with so far is to add an opaque rectangle as a child of the root <svg> element, underneath the bottom-most layer. The rectangle should be:
- opaque
- have its fill synchronized with the document background color
- have its dimensions synchronized with the document dimensions
The rectangle would be added the first time that blend mode is engaged for a layer in the document, and ideally removed when no layers any longer have a special blending mode. Export transparency should also be disabled when blend modes are in use.
Since we cannot make blend modes work correctly over transparent backgrounds within the confines of SVG, we will need a good workaround. The problems are, unfortunately, extremely user-visible.
The best idea I've been able to come up with so far is to add an opaque rectangle as a child of the root <svg> element, underneath the bottom-most layer. The rectangle should be:
- opaque
- have its fill synchronized with the document background color
- have its dimensions synchronized with the document dimensions
The rectangle would be added the first time that blend mode is engaged for a layer in the document, and ideally removed when no layers any longer have a special blending mode. Export transparency should also be disabled when blend modes are in use.