summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--libs/hwui/hwui/MinikinSkia.cpp9
-rw-r--r--libs/hwui/hwui/MinikinSkia.h5
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;