Re: [csswg-drafts] [css-will-change-1] proposal: will-change: integer-transform (#4560)

@tabatkins, exactly! This is just `will-change: transform` without forcing greyscale AA immediately.

@jrmuizel, blink is unable to use subpixel antialiasing in a lot of cases, such as for content that is not known to be opaque or is not known to have an integer to-screen transform. These implementation-specific restrictions are why I'd like to use a will-change hint rather than an approach like `font-smoothing: subpixel-antialiased` which blink cannot honor in the general case.

In terms of the actual implementation: all engines have an optimization to avoid work when scrolling the main document, and this hint allows for a similar optimization when changing transform. Blink implements this by rasterizing content into a texture on the GPU and then moving that texture instead of re-generating it when scroll offsets or transforms change. If we are unable to maintain subpixel antialiased text, such as if opacity is applied, the text would fall back to greyscale antialiasing permanently.

@emilio, that is a great question. If the engine is unable to re-use high quality text with changing integer transforms, the hint would be equivalent to `will-change: transform`.

-- 
GitHub Notification of comment by progers
Please view or discuss this issue at https://github.com/w3c/csswg-drafts/issues/4560#issuecomment-565586692 using your GitHub account

Received on Friday, 13 December 2019 19:57:08 UTC