From 7edec140391ce06933cc1506d96bb70093b63c7b Mon Sep 17 00:00:00 2001 From: "reed@google.com" Date: Fri, 31 May 2013 20:17:57 +0000 Subject: 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 --- src/fonts/SkGScalerContext.h | 43 +++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 43 insertions(+) create mode 100644 src/fonts/SkGScalerContext.h (limited to 'src/fonts/SkGScalerContext.h') 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 -- cgit v1.2.3