diff options
Diffstat (limited to 'src/ports/SkFontMgr_android.cpp')
-rw-r--r-- | src/ports/SkFontMgr_android.cpp | 16 |
1 files changed, 16 insertions, 0 deletions
diff --git a/src/ports/SkFontMgr_android.cpp b/src/ports/SkFontMgr_android.cpp index 5194e1f7b7..a7cbd97d26 100644 --- a/src/ports/SkFontMgr_android.cpp +++ b/src/ports/SkFontMgr_android.cpp @@ -98,6 +98,22 @@ public: return skstd::make_unique<SkFontData>(this->makeStream(), fIndex, fAxes.begin(), fAxes.count()); } + sk_sp<SkTypeface> onMakeClone(const SkFontArguments& args) const override { + std::unique_ptr<SkFontData> data = this->cloneFontData(args); + if (!data) { + return nullptr; + } + return sk_make_sp<SkTypeface_AndroidSystem>(fPathName, + fFile, + fIndex, + data->getAxis(), + data->getAxisCount(), + this->fontStyle(), + this->isFixedPitch(), + fFamilyName, + fLang, + fVariantStyle); + } const SkString fPathName; int fIndex; |