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

Issue 608214 link

Starred by 2 users

Issue metadata

Status: WontFix
Owner: ----
Closed: Jan 2017
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: Windows , Mac
Pri: 3
Type: Bug



Sign in to add a comment

v50 introduced blurry canvas text and images

Project Member Reported by cblume@chromium.org, May 1 2016

Issue description

Google Chrome 50.0.2661.94 (Official Build) m (32-bit)
chrome://gpu shows hardware acceleration for everything except:
Native GpuMemoryBuffers: Software only. Hardware acceleration disabled
Rasterization: Software only. Hardware acceleration disabled

v50 introduced a set of problems relating to blurred rasterization when zoomed which were not in v49.


Blurry canvas text:
http://static.chrisblume.net/Images/Chrome/blurry-text.gif
In this image you can see the "View Options" text remains high quality at different zoom levels. That text is not inside a canvas element. However, the text over the colored blocks in the tracing look blurry at different zoom levels. That is inside a canvas element.

Blurry images:
http://static.chrisblume.net/Images/Chrome/blurry-image.gif
In this image you can see as the page is zoomed in there will be a blurry preview image which is then quickly replaced with a higher quality image. However, after a certain zoom level the higher quality image never comes. The image is scaled down on the webpage (meaning the image might be 800px wide but only displayed at 600px).

http://static.chrisblume.net/Images/Chrome/blurry-image-2.gif
In this image you can see that the window is shrunk down and the image is scaled down. There is a similar preview image which pops into a higher quality image. However, once the window size increases enough to allow the image to approach its natural display size (which is still scaled down) the preview remains and there is no high quality image which pops in.

Thanks to Brook Miles for finding these bugs and creating the gifs.
 
Labels: OS-Windows

Comment 2 by vmi...@chromium.org, Jan 19 2017

Cc: junov@chromium.org
Components: -Internals>Compositing Blink>Canvas
Status: Available (was: Untriaged)
I suspect this is working as intended.  +junov@ to confirm.

Comment 3 by junov@chromium.org, Jan 19 2017

Status: WontFix (was: Available)
The high quality popping in has to do with the compositor resizing layers and later doing a proper repaint at the right scale.  But this can't do any magic when you zoom-in beyond 100% because it result in the canvas being upsampled.

For text rendering, it is a special case.  When a 2D context is created with the {alpha:false} and its pixels are aligned with screen pixels, then sub-pixel test anti-aliasing gets turned on, producing text that is nice and sharp.  Otherwise (when the canvas is zoomed, for example), text has to be rendered using regular grayscale anti-aliasing in order to avoid re-sampling artifacts. Some apps attempt to conteract this by resizing the intrinsic size of the canvas to match the screen resolution at any scale.

This is inconvenient, but it is the intended behavior.  The situation will get better once we implement the canvas.renderedPixelWidth/Height feature.

Sign in to add a comment