Factor text size device mapping in SkScalerContext.
authorbungeman <bungeman@google.com>
Fri, 5 Dec 2014 20:26:44 +0000 (12:26 -0800)
committerCommit bot <commit-bot@chromium.org>
Fri, 5 Dec 2014 20:26:44 +0000 (12:26 -0800)
commit5f14c5e038a16c80d50c2f87ae7c8775f977456c
tree96155b8ea1de77b113eed479b0397df9f5bdb168
parent03d3bb00bb9934feb453a6d367b84c8576a69acc
Factor text size device mapping in SkScalerContext.

All of our font back-ends use the text size in some way other than
simple concatentation with the current matrix. The code here finds
the full device matrix and then decomposes it to extract the text
size.

FreeType, GDI, and DirectWrite use the text size as the pre-hint scale.
CoreText will not scale color emoji above the requested text size,
and certain features like 'trak' are performed on the text size.

Review URL: https://codereview.chromium.org/748883005
src/core/SkScalerContext.cpp
src/core/SkScalerContext.h
src/ports/SkFontHost_FreeType.cpp
src/ports/SkFontHost_win.cpp
src/ports/SkScalerContext_win_dw.cpp