Implement SVGImage::applyShader()
Currently, when SVGImages need to be painted via shaders (e.g. rounded
borders) we build an SkImage backed by an SkPictureImageGenerator. The
problem is SkPictureImageGenerator has an intrinsic resolution, so it
locks the rasterization scale prematurely. If we later scale this
SkImage (pinch zoom, or device scale factor on certain platforms), we're
scaling a bitmap - not a vector recording.
To avoid this, implement an applyShader() override and use a
SkPictureShader (which does not lock the resolution) instead of
SkImage/SkPictureImageGenerator.
BUG=696575R=fs@opera.com,schenney@chromium.org
Review-Url: https://codereview.chromium.org/2753633003
Cr-Commit-Position: refs/heads/master@{#457429}
Committed: https://chromium.googlesource.com/chromium/src/+/f3470d2b864f14e076b1c891d39f7a65b5ab78b0
Dry run: Try jobs failed on following builders: linux_chromium_asan_rel_ng on master.tryserver.chromium.linux (JOB_FAILED, http://build.chromium.org/p/tryserver.chromium.linux/builders/linux_chromium_asan_rel_ng/builds/329210) linux_chromium_rel_ng on ...
3 years, 9 months ago
(2017-03-15 19:54:02 UTC)
#8
Still waiting for rebaseline for the modified test (https://storage.googleapis.com/chromium-layout-test-archives/mac10_9_blink_rel/2184/layout-test-results/results.html), but other than that I think ...
3 years, 9 months ago
(2017-03-15 20:41:39 UTC)
#11
Dry run: Try jobs failed on following builders: win_chromium_rel_ng on master.tryserver.chromium.win (JOB_FAILED, http://build.chromium.org/p/tryserver.chromium.win/builders/win_chromium_rel_ng/builds/401488)
3 years, 9 months ago
(2017-03-15 21:44:11 UTC)
#15
CQ is committing da patch. Bot data: {"patchset_id": 80001, "attempt_start_ts": 1489669148344220, "parent_rev": "7dd150883791d4d7aecf7bb93edb3f733fa11237", "commit_rev": "f3470d2b864f14e076b1c891d39f7a65b5ab78b0"}
3 years, 9 months ago
(2017-03-16 14:25:40 UTC)
#20
CQ is committing da patch.
Bot data: {"patchset_id": 80001, "attempt_start_ts": 1489669148344220,
"parent_rev": "7dd150883791d4d7aecf7bb93edb3f733fa11237", "commit_rev":
"f3470d2b864f14e076b1c891d39f7a65b5ab78b0"}
commit-bot: I haz the power
Description was changed from ========== Implement SVGImage::applyShader() Currently, when SVGImages need to be painted via ...
3 years, 9 months ago
(2017-03-16 14:26:25 UTC)
#21
Message was sent while issue was closed.
Description was changed from
==========
Implement SVGImage::applyShader()
Currently, when SVGImages need to be painted via shaders (e.g. rounded
borders) we build an SkImage backed by an SkPictureImageGenerator. The
problem is SkPictureImageGenerator has an intrinsic resolution, so it
locks the rasterization scale prematurely. If we later scale this
SkImage (pinch zoom, or device scale factor on certain platforms), we're
scaling a bitmap - not a vector recording.
To avoid this, implement an applyShader() override and use a
SkPictureShader (which does not lock the resolution) instead of
SkImage/SkPictureImageGenerator.
BUG=696575
R=fs@opera.com,schenney@chromium.org
==========
to
==========
Implement SVGImage::applyShader()
Currently, when SVGImages need to be painted via shaders (e.g. rounded
borders) we build an SkImage backed by an SkPictureImageGenerator. The
problem is SkPictureImageGenerator has an intrinsic resolution, so it
locks the rasterization scale prematurely. If we later scale this
SkImage (pinch zoom, or device scale factor on certain platforms), we're
scaling a bitmap - not a vector recording.
To avoid this, implement an applyShader() override and use a
SkPictureShader (which does not lock the resolution) instead of
SkImage/SkPictureImageGenerator.
BUG=696575
R=fs@opera.com,schenney@chromium.org
Review-Url: https://codereview.chromium.org/2753633003
Cr-Commit-Position: refs/heads/master@{#457429}
Committed:
https://chromium.googlesource.com/chromium/src/+/f3470d2b864f14e076b1c891d39f...
==========
commit-bot: I haz the power
Committed patchset #5 (id:80001) as https://chromium.googlesource.com/chromium/src/+/f3470d2b864f14e076b1c891d39f7a65b5ab78b0
3 years, 9 months ago
(2017-03-16 14:26:27 UTC)
#22
Issue 2753633003: Implement SVGImage::applyShader()
(Closed)
Created 3 years, 9 months ago by f(malita)
Modified 3 years, 9 months ago
Reviewers: fs, Stephen Chennney
Base URL:
Comments: 2