Prescaling images loses subpixel precision in translation
Project Member Reported by email@example.com, Jul 24 2013
What steps will reproduce the problem? 1. Draw a bitmap with a non-trivial scale and a fractional translation What is the expected output? What do you see instead? The fractional translation should persist through to the per-scanline bilerp code. Instead, we remove the scale factor from the matrix after scaling, causing us to think that the matrix is translation-only. Unfortunately, for translation-only matrices, we round the translation amounts to the nearest integer. Need to have a discussion with the right people about why translations are quantized in these cases, and what I should do about it.
May 29 2014,
Commit: https://skia.googlesource.com/skia/+/1803f4e Email: firstname.lastname@example.org@2bbb7eff-a529-9590-31e7-b0007b416f81 new animated sample to show subpixel translate bug with high quality scaling BUG=1445 Remail@example.com, firstname.lastname@example.org Author: email@example.com Review URL: https://codereview.chromium.org/303123003 git-svn-id: http://skia.googlecode.com/svn/trunk@14981 2bbb7eff-a529-9590-31e7-b0007b416f81 Thu May 29 22:01:08 2014 +0000 M gyp/SampleApp.gyp A samplecode/SampleSubpixelTranslate.cpp
May 30 2014,
Oct 13 2014,
Sep 5 2015,
Mar 2 2016,
Confirmed that the example mentioned above still shows the whole pixel jumps described above. However, whole pixel jumps may be desirable in scrolling and zooming applications. Does this bug still have legs?
Sign in to add a comment