New issue
Advanced search Search tips
Note: Color blocks (like or ) mean that a user may not be available. Tooltip shows the reason.

Issue 688671 link

Starred by 3 users

Issue metadata

Status: Fixed
Owner:
Last visit > 30 days ago
Closed: Mar 2017
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: Linux , Windows , Mac
Pri: 2
Type: Bug



Sign in to add a comment

Svg to the canvas ,fill color does not work

Reported by w12594...@126.com, Feb 4 2017

Issue description

UserAgent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Ubuntu Chromium/55.0.2883.87 Chrome/55.0.2883.87 Safari/537.36

Steps to reproduce the problem:
1. 
2. 
3. 

What is the expected behavior?

What went wrong?
http://codepen.io/w12594822/pen/xgjomO
I would like to svg drawn to the canvas, chrome 52 can, Firefox can, but chrome54 + can not

Did this work before? N/A 

Chrome version: 55.0.2883.87  Channel: n/a
OS Version: 4.4.0-57-generic
Flash Version:

 

Comment 1 by w12594...@126.com, Feb 4 2017

canvas change the size of <canvas> to 200x200 - it works!
Labels: Needs-Milestone
Labels: M-58 OS-Mac OS-Windows
Status: Untriaged (was: Unconfirmed)
Thanks for the report.
Able to reproduce the issue on Win-7, Mac OS X 10.11.4, Ubuntu-14.04 using Chrome Canary # 58.0.3003.0, Stable#56.0.2924.87 and Reported version 55.0.2883.87 

This is non-regression issue, Observed from M30 #30.0.1550.0 and marking it as Untriaged to get it addressed.
Please find the attached screen-cast for reference.

Thanks..
688671.mp4
373 KB View Download

Comment 4 by w12594...@126.com, Feb 6 2017

Comment 5 by w12594...@126.com, Feb 6 2017

Comment 6 Deleted

I'm not sure if it helps, but nor Firefox nor chrome do fill this shape when passed as a Path2D, while they both do with a simpler (rect) Path2D,  with the same extreme scales.

http://codepen.io/anon/pen/YNjPGr

But FF can drawImage the svg file.

Comment 8 by w12594...@126.com, Feb 7 2017

The OS is ubuntu(16.04.4)
code.png
238 KB View Download
version.png
167 KB View Download

Comment 9 by kochi@chromium.org, Feb 8 2017

Components: -Blink Blink>SVG

Comment 10 by f...@opera.com, Feb 8 2017

Components: -Blink>SVG Blink>Canvas Internals>GPU>Rasterization
This looks like a raster bug (indicated by comment #1, breakpoint is 256x256; disable canvas acceleration to verify)
Firefox 51.0.1 (64-bit) and Chrome 57.0.2987.21 beta on linux both fill both circles.
On Windows 10, Chrome 58.0.3007.0 canary fills neither circle, and  57.0.2987.21 beta is the same. Edge draws 2 bug red squares.
Components: -Internals>GPU>Rasterization
It's not an accelerated canvas issue. It fails on Windows with and without.

On Mac, 57.0.2987.21 beta renders one circle, like is shown above. So does 58.0.3007.0 although before updating I thought I saw no green in 58.0.3004.0 (or whatever my prior version was).

Comment 15 by w12594...@126.com, Feb 10 2017

http://codepen.io/anon/pen/YNjPGr
This test case should be the same problem as mine

Comment 16 by w12594...@126.com, Feb 11 2017


I modified the vertex, the normal display.Whether it is Triangle algorithm problems?

Comment 17 by w12594...@126.com, Feb 11 2017

aaaa.png
333 KB View Download
Components: Internals>GPU
Labels: Hotlist-Interop
Since Firefox does get the right, this is an interoperability issue.

This looks like a hardware acceleration code path issue -
Using BrowserStack Windows 7, I cannot reproduce the issue using any Chrome version, including the latest stable and dev. about:gpu shows that nothing is accelerated.
Windows 8 (using BrowserStack) reproduces the issue and it has most of the hardware acceleration features turned on (multiple raster threads, native GpuMemoryBuffers, rasterization and VPx are turned off).
Windows 10 also reproduces and has the almost the same hardware acceleration features (with the exception of VPx being turned on as well).

Comment 19 by w12594...@126.com, Feb 13 2017

Turn off canvas acceleration
2017-02-13 08-31-49 的屏幕截图.png
417 KB View Download

Comment 20 by junov@chromium.org, Feb 20 2017

I bisected the 52->54 regression range reported in the original report, using linux64 builds. The bisect points to the revision that enable gpu-acceleration on linux:


You are probably looking for a change made after 412918 (known good), but no later than 412921 (first known bad).
CHANGELOG URL:
  https://chromium.googlesource.com/chromium/src/+log/697e6fc2d3a21124b983953086d525576fdf15f5..7570c47baec364f3e0901d139e0fd1d74c00d6e2


Comment 21 by junov@chromium.org, Feb 20 2017

Workaround: go through an ImageBitmap intermediate: http://codepen.io/anon/pen/vgoBPq

Comment 22 by junov@chromium.org, Feb 27 2017

Components: -Internals>GPU Internals>Skia
Owner: bsalomon@chromium.org
Status: Available (was: Untriaged)
This appear to be an issue the GPU-accelerated path rasterization in skia

Assigning to bsalomon for further triage.
I have a repro. Investigating...
Cc: robertphillips@chromium.org ethannicholas@chromium.org
The GrAAConvexTessellator fails to tessellate the path.
layer_2.skp
914 bytes Download
This is a small path with a large matrix. The path iterator consumes all the verbs.
Project Member

Comment 26 by bugdroid1@chromium.org, Feb 28 2017

The following revision refers to this bug:
  https://skia.googlesource.com/skia/+/97042bfd9f4a1ff825a92ac13965b80fd712d4f2

commit 97042bfd9f4a1ff825a92ac13965b80fd712d4f2
Author: Brian Salomon <bsalomon@google.com>
Date: Tue Feb 28 17:02:57 2017

When traversing convex paths only consume zero length segments.

BUG= chromium:688671 

Change-Id: Ic27dde1ea7c1fe8b6afa0a05c637d8272e88b803
Reviewed-on: https://skia-review.googlesource.com/9071
Commit-Queue: Brian Salomon <bsalomon@google.com>
Reviewed-by: Robert Phillips <robertphillips@google.com>

[modify] https://crrev.com/97042bfd9f4a1ff825a92ac13965b80fd712d4f2/src/gpu/ops/GrAAConvexPathRenderer.cpp
[modify] https://crrev.com/97042bfd9f4a1ff825a92ac13965b80fd712d4f2/src/gpu/ops/GrAAConvexTessellator.cpp

Project Member

Comment 27 by bugdroid1@chromium.org, Feb 28 2017

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/37f315267bdd7c8efbd918e85f790e2794cc2dc5

commit 37f315267bdd7c8efbd918e85f790e2794cc2dc5
Author: skia-deps-roller <skia-deps-roller@chromium.org>
Date: Tue Feb 28 19:23:26 2017

Roll src/third_party/skia/ 3c322e23a..c787e495e (5 commits).

https://skia.googlesource.com/skia.git/+log/3c322e23a013..c787e495e28d

$ git log 3c322e23a..c787e495e --date=short --no-merges --format='%ad %ae %s'
2017-02-28 robertphillips Allow GrSurfaceProxy-derived classes to use flags when instantiating (take 2)
2017-02-28 caryclark Revert "Add AVX-512 detection to SkCpu"
2017-02-28 bsalomon When traversing convex paths only consume zero length segments.
2017-02-28 herb Fix single leg Compose Shader crash.
2017-02-28 jvanverth Reland: Allow DFPathRenderer to store bitmaps at low resolutions

Created with:
  roll-dep src/third_party/skia
BUG= 688671 ,682918

Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+/master/autoroll/README.md

If the roll is causing failures, see:
http://www.chromium.org/developers/tree-sheriffs/sheriff-details-chromium#TOC-Failures-due-to-DEPS-rolls

CQ_INCLUDE_TRYBOTS=master.tryserver.blink:linux_trusty_blink_rel
TBR=caryclark@google.com

Review-Url: https://codereview.chromium.org/2722853002
Cr-Commit-Position: refs/heads/master@{#453660}

[modify] https://crrev.com/37f315267bdd7c8efbd918e85f790e2794cc2dc5/DEPS

Status: Fixed (was: Available)

Comment 29 by w12594...@126.com, Mar 2 2017

As a fan of chromium, I am glad that this bug can be corrected!☺
Labels: TE-Verified-M58 TE-Verified-58.0.3029.6
Verified this issue on Windows 10, Ubuntu 14.04 and Mac 10.12.3 with chrome dev #58.0.3029.6

Observed that svg drawn in both circles 

Attaching the screen-cast for reference.

Adding TE-Verified labels
Issue 688671.mp4
1.1 MB View Download

Comment 31 Deleted

Comment 32 Deleted

Sign in to add a comment