diff options
Diffstat (limited to 'src/ports/SkTypeface_win_dw.cpp')
-rw-r--r-- | src/ports/SkTypeface_win_dw.cpp | 19 |
1 files changed, 7 insertions, 12 deletions
diff --git a/src/ports/SkTypeface_win_dw.cpp b/src/ports/SkTypeface_win_dw.cpp index 18c63a5089..de599d67e5 100644 --- a/src/ports/SkTypeface_win_dw.cpp +++ b/src/ports/SkTypeface_win_dw.cpp @@ -284,8 +284,6 @@ void DWriteFontTypeface::onFilterRec(SkScalerContext::Rec* rec) const { /////////////////////////////////////////////////////////////////////////////// //PDF Support -using namespace skia_advanced_typeface_metrics_utils; - // Construct Glyph to Unicode table. // Unicode code points that require conjugate pairs in utf16 are not // supported. @@ -444,19 +442,16 @@ SkAdvancedTypefaceMetrics* DWriteFontTypeface::onGetAdvancedTypefaceMetrics( if (perGlyphInfo & kHAdvance_PerGlyphInfo) { if (fixedWidth) { - appendRange(&info->fGlyphWidths, 0); + SkAdvancedTypefaceMetrics::WidthRange range(0); int16_t advance; getWidthAdvance(fDWriteFontFace.get(), 1, &advance); - info->fGlyphWidths->fAdvance.append(1, &advance); - finishRange(info->fGlyphWidths.get(), 0, - SkAdvancedTypefaceMetrics::WidthRange::kDefault); + range.fAdvance.append(1, &advance); + SkAdvancedTypefaceMetrics::FinishRange( + &range, 0, SkAdvancedTypefaceMetrics::WidthRange::kDefault); + info->fGlyphWidths.emplace_back(std::move(range)); } else { - info->fGlyphWidths.reset( - getAdvanceData(fDWriteFontFace.get(), - glyphCount, - glyphIDs, - glyphIDsCount, - getWidthAdvance)); + info->setGlyphWidths(fDWriteFontFace.get(), glyphCount, glyphIDs, + glyphIDsCount, getWidthAdvance); } } |