diff options
author | Ben Wagner <bungeman@google.com> | 2018-02-15 10:20:04 -0500 |
---|---|---|
committer | Skia Commit-Bot <skia-commit-bot@chromium.org> | 2018-03-22 20:55:05 +0000 |
commit | c912d6133c66df7cde3d64adc76941856a12da64 (patch) | |
tree | d930e2c70814d21347d5069089fa6f18c25ddcb8 /src/ports/SkFontHost_win.cpp | |
parent | 0f66681ff1c7a2b22d89424ba69e3a5bb8c40b0b (diff) |
Add color fonts.
BUG=skia:7624
Change-Id: Id2b7449048591892ff802484d5e3745a7e1402bb
Reviewed-on: https://skia-review.googlesource.com/109521
Commit-Queue: Ben Wagner <bungeman@google.com>
Reviewed-by: Mike Klein <mtklein@google.com>
Reviewed-by: Herb Derby <herb@google.com>
Diffstat (limited to 'src/ports/SkFontHost_win.cpp')
-rw-r--r-- | src/ports/SkFontHost_win.cpp | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/src/ports/SkFontHost_win.cpp b/src/ports/SkFontHost_win.cpp index f0eb7b7d9b..abe1550a01 100644 --- a/src/ports/SkFontHost_win.cpp +++ b/src/ports/SkFontHost_win.cpp @@ -830,6 +830,13 @@ uint16_t SkScalerContext_GDI::generateCharToGlyph(SkUnichar utf32) { HRZM(ScriptItemize(utf16, numWCHAR, maxItems, &sc, nullptr, si, &numItems), "Could not itemize character."); + // Disable any attempt at shaping. + // Without this ScriptShape may return 0x80040200 (USP_E_SCRIPT_NOT_IN_FONT) + // when all that is desired here is a simple cmap lookup. + for (SCRIPT_ITEM& item : si) { + item.a.eScript = SCRIPT_UNDEFINED; + } + // Sometimes ScriptShape cannot find a glyph for a non-BMP and returns 2 space glyphs. static const int maxGlyphs = 2; SCRIPT_VISATTR vsa[maxGlyphs]; |