diff options
author | 2013-05-31 20:17:57 +0000 | |
---|---|---|
committer | 2013-05-31 20:17:57 +0000 | |
commit | 7edec140391ce06933cc1506d96bb70093b63c7b (patch) | |
tree | c301e0122525d2d9b9a48525154164f405779f64 /src/fonts/SkGScalerContext.h | |
parent | a96627fd2467b74004f8950eb78ce8888ca97088 (diff) |
start a wrapper for color fonts
BUG=
R=bungeman@google.com
Review URL: https://codereview.chromium.org/14890016
git-svn-id: http://skia.googlecode.com/svn/trunk@9381 2bbb7eff-a529-9590-31e7-b0007b416f81
Diffstat (limited to 'src/fonts/SkGScalerContext.h')
-rw-r--r-- | src/fonts/SkGScalerContext.h | 43 |
1 files changed, 43 insertions, 0 deletions
diff --git a/src/fonts/SkGScalerContext.h b/src/fonts/SkGScalerContext.h new file mode 100644 index 0000000000..504bc7b647 --- /dev/null +++ b/src/fonts/SkGScalerContext.h @@ -0,0 +1,43 @@ +/* + * Copyright 2013 Google Inc. + * + * Use of this source code is governed by a BSD-style license that can be + * found in the LICENSE file. + */ + +#ifndef SkGScalerContext_DEFINED +#define SkGScalerContext_DEFINED + +#include "SkScalerContext.h" +#include "SkTypeface.h" + +class SkGTypeface : public SkTypeface { +public: + SkGTypeface(SkTypeface* proxy, const SkPaint&); + virtual ~SkGTypeface(); + + SkTypeface* proxy() const { return fProxy; } + const SkPaint& paint() const { return fPaint; } + +protected: + virtual SkScalerContext* onCreateScalerContext(const SkDescriptor*) const SK_OVERRIDE; + virtual void onFilterRec(SkScalerContextRec*) const SK_OVERRIDE; + virtual SkAdvancedTypefaceMetrics* onGetAdvancedTypefaceMetrics( + SkAdvancedTypefaceMetrics::PerGlyphInfo, + const uint32_t* glyphIDs, + uint32_t glyphIDsCount) const SK_OVERRIDE; + virtual SkStream* onOpenStream(int* ttcIndex) const SK_OVERRIDE; + virtual void onGetFontDescriptor(SkFontDescriptor*, bool* isLocal) const SK_OVERRIDE; + + virtual int onGetUPEM() const SK_OVERRIDE; + + virtual int onGetTableTags(SkFontTableTag tags[]) const SK_OVERRIDE; + virtual size_t onGetTableData(SkFontTableTag, size_t offset, + size_t length, void* data) const SK_OVERRIDE; + +private: + SkTypeface* fProxy; + SkPaint fPaint; +}; + +#endif |