Closed Bug 1474141 Opened 4 years ago Closed 4 years ago
Blurry SVG image post milestone 66
User Agent: Mozilla/5.0 (X11; Linux x86_64; rv:63.0) Gecko/20100101 Firefox/63.0 Build ID: 20180706224413 Steps to reproduce: Navigate to https://troyciv.github.io/anki/2018/07/04/anki-fundamentals.html and look at image embedded there (https://troyciv.github.io/assets/img/anki-flowchart-4.svg) Actual results: I see blurry text in this SVG, where previously text was sharp. Expected results: Sharp text in the SVG. See comparison vs. Chromium screenshot. 10:13.00 INFO: Last good revision: 4b472939ee78c3221dcca484395187f765e44912 10:13.00 INFO: First bad revision: f3410beb9eb1515c041a343ed077f3b2399ecee2 10:13.00 INFO: Pushlog: https://hg.mozilla.org/integration/mozilla-inbound/pushloghtml?fromchange=4b472939ee78c3221dcca484395187f765e44912&tochange=f3410beb9eb1515c041a343ed077f3b2399ecee2
The root cause here is that the SVG itself has a "translate(0.5, 0.5)" inside it, which offsets the sampling by half of a pixel. In the older version of Skia, there used to be some weird code that would actually ignore subpixel offsets when sampling, effectively doing point sampling. This was a legacy Skia bug that was enshrined into a legacy Skia "feature". Then at some point Skia upstream got rid of compatibility with this legacy bug entirely, since it wasn't consistent with how the GPU or other platform-native 2D APIs were doing things. Our Direct2D backend renders the SVG the same way as Skia does post-update, or rather, Skia post-update now finally is consistent with our Direct2D backend, which honors the "translate(0.5, 0.5)" correctly.
I think this is essentially wontfix. Being consistent across platforms is a good thing, even if the rendering is undesirable for certain SVGs. Fixing that general potentially undesirable behavior is already covered by bug 608812 (and at least one other I think).
Status: NEW → RESOLVED
Closed: 4 years ago
Priority: -- → P3
Resolution: --- → WONTFIX
You need to log in before you can comment on or make changes to this bug.