[svgwg] Poor interop of <feComposite operator="arithmetic"> with large k values (#1046)

smfr has just created a new issue for https://github.com/w3c/svgwg:

== Poor interop of <feComposite operator="arithmetic"> with large k values ==
Mozilla's ref [test analyzer](https://wpt.live/common/third_party/reftest-analyzer.xhtml)  uses SVG filters to highlight differences between two images. One filter primitive is:

```
<feComposite result="c" in="c1" in2="c2" operator="arithmetic" k2="255" k3="255"/>
```

The arithmetic operator has poor interop, possibly because of rounding issues. Test case:

```
        <filter id="filter" filterUnits="objectBoundingBox" x="0" y="0" width="100%" height="100%">
            <feFlood x="10" y="10" width="200" height="200" flood-color="rgb(128, 10, 0)" flood-opacity="0.5" result="first" />
            <feFlood x="100" y="100" width="200" height="200" flood-color="rgb(10, 128, 0)" flood-opacity="1" result="second" />
            <feComposite in="first" in2="second" operator="arithmetic" k2="255" k3="255" />
        </filter>
```

This gives different results in each major browser:

<img width="1697" height="749" alt="Image" src="https://github.com/user-attachments/assets/caa97c70-2851-45bf-b7a8-cf1aa66b2661" />

Chrome's results even change based on the screen color profile.

Please view or discuss this issue at https://github.com/w3c/svgwg/issues/1046 using your GitHub account


-- 
Sent via github-notify-ml as configured in https://github.com/w3c/github-notify-ml-config

Received on Thursday, 1 January 2026 20:17:29 UTC