Closed Bug 1538554 Opened 6 years ago Closed 6 years ago

svg filters: feimage will not render when using reference from fragment inside "defs" section

Categories

(Core :: SVG, defect)

65 Branch
defect
Not set
normal

Tracking

()

RESOLVED DUPLICATE of bug 455986

People

(Reporter: waste, Unassigned)

Details

Attachments

(1 file)

(deleted), image/svg+xml
Details
Attached image SVG with Demo (deleted) —

User Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.14; rv:65.0) Gecko/20100101 Firefox/65.0

Steps to reproduce:

Create an SVG with an SVG filter in it that vontains an feimage primitive that references a fragment which is placed inside the <defs> section.

Apply filter to an arbitrary Element, e. g. a <rect>.

Actual results:

Filtered element disappears.

Demo:
https://eleqtriq.net/browserbugs/fox-feimg.svg

Expected results:

Referenced fragment should appear as a pattern on target (place the fragment outside the defs-section and everything will work fine. But this means the element is always visible which maybe undesireble in many situations).

Component: Untriaged → SVG
Product: Firefox → Core
Status: UNCONFIRMED → RESOLVED
Closed: 6 years ago
Resolution: --- → DUPLICATE

Don't see why this is a dupicate of 455986. As far as I can say nowadays fragments do actually render when referenced from feimage, but not when they are inside a defs-section.

Flags: needinfo?(longsonr)

If you have an example of a fragment not in a defs section I can explain why it's different.

Flags: needinfo?(longsonr)

Here's an example of a feDisplacmentmap where the map is referenced from a fragment:

https://eleqtriq.net/browserbugs/fragment-in-displacement.svg

I rembemer not so long ago this didn't work in Firefox.

I still have several issues with feImage and will file bugs for them over time, but on the most basic level it seems to work now...

Neither Chrome nor Safari display the image the same as Firefox (or each other). Why do you think that

a) Firefox's rendering is correct
b) Firefox's rendering illustrates that it is processing feImage fragments correctly.

My bad, I shouldn't have thrown feDisplacement into the mix, which ist a totally different can of worms with tons of bugs still waiting to be reported on all platforms :/.

Let's stick with feeding a fragment to feImage for now :). Here's just that - fragment rendered onto a rect via feimage:

https://eleqtriq.net/browserbugs/img/feimg.svg

Well it does appear to be doing something which means that maybe bug 455986 only needs to cover the case that the fragment is not directly rendered at this point.

Establishing a regression range for https://eleqtriq.net/browserbugs/img/feimg.svg working via https://mozilla.github.io/mozregression/ might help understand why its working and what's left to do.

You need to log in before you can comment on or make changes to this bug.

Attachment

General

Creator:
Created:
Updated:
Size: