diff options
author | bungeman <bungeman@google.com> | 2017-02-17 18:03:49 -0500 |
---|---|---|
committer | Skia Commit-Bot <skia-commit-bot@chromium.org> | 2017-02-23 18:41:57 +0000 |
commit | 0f3d0c37dbcaf4ec271d5fe847becc9b1aa6f537 (patch) | |
tree | cae67def2ed8a8ba416132b609cb98fe7563c691 /src/ports/SkFontHost_win.cpp | |
parent | 6d67396bf06fb603825bf6a792a2e1c8eb405fe0 (diff) |
Add SkTypeface::getVariationDesignPosition.
Allow users to query a typeface's position in variation design space.
Change-Id: I173ee9eefdddee6b2613435ebcc6b08c25b382ed
Reviewed-on: https://skia-review.googlesource.com/8684
Commit-Queue: Ben Wagner <bungeman@google.com>
Reviewed-by: Mike Reed <reed@google.com>
Diffstat (limited to 'src/ports/SkFontHost_win.cpp')
-rw-r--r-- | src/ports/SkFontHost_win.cpp | 19 |
1 files changed, 13 insertions, 6 deletions
diff --git a/src/ports/SkFontHost_win.cpp b/src/ports/SkFontHost_win.cpp index e6e07159c4..fbcd01a0ff 100644 --- a/src/ports/SkFontHost_win.cpp +++ b/src/ports/SkFontHost_win.cpp @@ -262,15 +262,19 @@ protected: SkAdvancedTypefaceMetrics* onGetAdvancedTypefaceMetrics( PerGlyphInfo, const uint32_t*, uint32_t) const override; void onGetFontDescriptor(SkFontDescriptor*, bool*) const override; - virtual int onCharsToGlyphs(const void* chars, Encoding encoding, - uint16_t glyphs[], int glyphCount) const override; + int onCharsToGlyphs(const void* chars, Encoding encoding, + uint16_t glyphs[], int glyphCount) const override; int onCountGlyphs() const override; int onGetUPEM() const override; void onGetFamilyName(SkString* familyName) const override; SkTypeface::LocalizedStrings* onCreateFamilyNameIterator() const override; + int onGetVariationDesignPosition(SkFontArguments::VariationPosition::Coordinate coordinates[], + int coordinateCount) const override + { + return -1; + } int onGetTableTags(SkFontTableTag tags[]) const override; - virtual size_t onGetTableData(SkFontTableTag, size_t offset, - size_t length, void* data) const override; + size_t onGetTableData(SkFontTableTag, size_t offset, size_t length, void* data) const override; }; class FontMemResourceTypeface : public LogFontTypeface { @@ -2455,17 +2459,20 @@ protected: SkTypeface* onCreateFromStream(SkStreamAsset* bareStream, int ttcIndex) const override { std::unique_ptr<SkStreamAsset> stream(bareStream); + if (ttcIndex != 0) { + return nullptr; + } return create_from_stream(stream.get()); } SkTypeface* onCreateFromData(SkData* data, int ttcIndex) const override { // could be in base impl - return this->createFromStream(new SkMemoryStream(sk_ref_sp(data))); + return this->createFromStream(new SkMemoryStream(sk_ref_sp(data)), ttcIndex); } SkTypeface* onCreateFromFile(const char path[], int ttcIndex) const override { // could be in base impl - return this->createFromStream(SkStream::MakeFromFile(path).release()); + return this->createFromStream(SkStream::MakeFromFile(path).release(), ttcIndex); } SkTypeface* onLegacyCreateTypeface(const char familyName[], SkFontStyle style) const override { |