| Index: src/ports/SkFontMgr_android.cpp
|
| diff --git a/src/ports/SkFontMgr_android.cpp b/src/ports/SkFontMgr_android.cpp
|
| index 11f944997111e1b12ed972758e0ea89d1bf81fa2..20a64d2ef8b8bd1af1a9615cd60b98aa885bb999 100644
|
| --- a/src/ports/SkFontMgr_android.cpp
|
| +++ b/src/ports/SkFontMgr_android.cpp
|
| @@ -51,6 +51,7 @@ class SkTypeface_AndroidSystem : public SkTypeface_Android {
|
| public:
|
| SkTypeface_AndroidSystem(const SkString& pathName,
|
| int index,
|
| + const SkTArray<SkFixed, true>& axes,
|
| const SkFontStyle& style,
|
| bool isFixedPitch,
|
| const SkString& familyName,
|
| @@ -59,7 +60,8 @@ public:
|
| : INHERITED(index, style, isFixedPitch, familyName)
|
| , fPathName(pathName)
|
| , fLang(lang)
|
| - , fVariantStyle(variantStyle) { }
|
| + , fVariantStyle(variantStyle)
|
| + , fAxes(axes) { }
|
|
|
| virtual void onGetFontDescriptor(SkFontDescriptor* desc,
|
| bool* serialize) const SK_OVERRIDE {
|
| @@ -67,17 +69,26 @@ public:
|
| SkASSERT(serialize);
|
| desc->setFamilyName(fFamilyName.c_str());
|
| desc->setFontFileName(fPathName.c_str());
|
| - desc->setFontIndex(fIndex);
|
| + desc->getFontParameters().fIndex = fIndex;
|
| *serialize = false;
|
| }
|
| SkStreamAsset* onOpenStream(int* ttcIndex) const SK_OVERRIDE {
|
| *ttcIndex = fIndex;
|
| return SkStream::NewFromFile(fPathName.c_str());
|
| }
|
| + SkStreamAsset* onOpenStream2(SkFontParameters* params) const SK_OVERRIDE {
|
| + params->fIndex = fIndex;
|
| + params->fAxis.reset(fAxes.count());
|
| + for (int i = 0 ; i < fAxes.count(); ++i) {
|
| + params->fAxis[i] = fAxes[i];
|
| + }
|
| + return SkStream::NewFromFile(fPathName.c_str());
|
| + }
|
|
|
| const SkString fPathName;
|
| const SkLanguage fLang;
|
| const FontVariant fVariantStyle;
|
| + const SkTArray<SkFixed, true> fAxes;
|
|
|
| typedef SkTypeface_Android INHERITED;
|
| };
|
| @@ -163,7 +174,7 @@ public:
|
| }
|
|
|
| fStyles.push_back().reset(SkNEW_ARGS(SkTypeface_AndroidSystem,
|
| - (pathName, ttcIndex,
|
| + (pathName, ttcIndex, fontFile.fAxes,
|
| style, isFixedWidth, familyName,
|
| lang, variant)));
|
| }
|
|
|