Index: src/ports/SkFontHost_win.cpp |
diff --git a/src/ports/SkFontHost_win.cpp b/src/ports/SkFontHost_win.cpp |
index 7ea6cdabb72948a2d290baa40fdd6d18386a3e21..aee2b863e6477a47e866929328d1b2bc28cd241f 100755 |
--- a/src/ports/SkFontHost_win.cpp |
+++ b/src/ports/SkFontHost_win.cpp |
@@ -1851,18 +1851,10 @@ SkAdvancedTypefaceMetrics* LogFontTypeface::onGetAdvancedTypefaceMetrics( |
info = new SkAdvancedTypefaceMetrics; |
info->fEmSize = otm.otmEMSquare; |
+ info->fMultiMaster = false; |
info->fLastGlyphID = SkToU16(glyphCount - 1); |
info->fStyle = 0; |
tchar_to_skstring(lf.lfFaceName, &info->fFontName); |
- info->fFlags = SkAdvancedTypefaceMetrics::kEmpty_FontFlag; |
- // If bit 1 is set, the font may not be embedded in a document. |
- // If bit 1 is clear, the font can be embedded. |
- // If bit 2 is set, the embedding is read-only. |
- if (otm.otmfsType & 0x1) { |
- info->fFlags = SkTBitOr<SkAdvancedTypefaceMetrics::FontFlags>( |
- info->fFlags, |
- SkAdvancedTypefaceMetrics::kNotEmbeddable_FontFlag); |
- } |
if (perGlyphInfo & SkAdvancedTypefaceMetrics::kToUnicode_PerGlyphInfo) { |
populate_glyph_to_unicode(hdc, glyphCount, &(info->fGlyphToUnicode)); |
@@ -1923,7 +1915,13 @@ SkAdvancedTypefaceMetrics* LogFontTypeface::onGetAdvancedTypefaceMetrics( |
} |
} |
- if (perGlyphInfo & SkAdvancedTypefaceMetrics::kHAdvance_PerGlyphInfo) { |
+ // If bit 1 is set, the font may not be embedded in a document. |
+ // If bit 1 is clear, the font can be embedded. |
+ // If bit 2 is set, the embedding is read-only. |
+ if (otm.otmfsType & 0x1) { |
+ info->fType = SkAdvancedTypefaceMetrics::kNotEmbeddable_Font; |
+ } else if (perGlyphInfo & |
+ SkAdvancedTypefaceMetrics::kHAdvance_PerGlyphInfo) { |
if (info->fStyle & SkAdvancedTypefaceMetrics::kFixedPitch_Style) { |
appendRange(&info->fGlyphWidths, 0); |
info->fGlyphWidths->fAdvance.append(1, &min_width); |