diff options
| -rw-r--r-- | libs/hwui/hwui/MinikinSkia.cpp | 9 | ||||
| -rw-r--r-- | libs/hwui/hwui/MinikinSkia.h | 5 |
2 files changed, 14 insertions, 0 deletions
diff --git a/libs/hwui/hwui/MinikinSkia.cpp b/libs/hwui/hwui/MinikinSkia.cpp index 375f5bc9df37..6a12a203b9f8 100644 --- a/libs/hwui/hwui/MinikinSkia.cpp +++ b/libs/hwui/hwui/MinikinSkia.cpp @@ -65,6 +65,15 @@ float MinikinFontSkia::GetHorizontalAdvance(uint32_t glyph_id, const minikin::Mi return skWidth; } +void MinikinFontSkia::GetHorizontalAdvances(uint16_t* glyph_ids, uint32_t count, + const minikin::MinikinPaint& paint, + const minikin::FontFakery& fakery, + float* outAdvances) const { + SkFont skFont; + MinikinFontSkia_SetSkiaFont(this, &skFont, paint, fakery); + skFont.getWidths(glyph_ids, count, outAdvances); +} + void MinikinFontSkia::GetBounds(minikin::MinikinRect* bounds, uint32_t glyph_id, const minikin::MinikinPaint& paint, const minikin::FontFakery& fakery) const { diff --git a/libs/hwui/hwui/MinikinSkia.h b/libs/hwui/hwui/MinikinSkia.h index ad46b2391cac..90f7d48a47ee 100644 --- a/libs/hwui/hwui/MinikinSkia.h +++ b/libs/hwui/hwui/MinikinSkia.h @@ -35,6 +35,11 @@ public: float GetHorizontalAdvance(uint32_t glyph_id, const minikin::MinikinPaint& paint, const minikin::FontFakery& fakery) const override; + void GetHorizontalAdvances(uint16_t* glyph_ids, uint32_t count, + const minikin::MinikinPaint& paint, + const minikin::FontFakery& fakery, + float* outAdvances) const override; + void GetBounds(minikin::MinikinRect* bounds, uint32_t glyph_id, const minikin::MinikinPaint& paint, const minikin::FontFakery& fakery) const override; |