Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(584)

Unified Diff: trunk/src/ports/SkFontHost_FreeType_common.h

Issue 12706010: Add SkTypeface* parameter to SkScalerContext (and its callers) (Closed) Base URL: http://skia.googlecode.com/svn/
Patch Set: Created 7 years, 9 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: trunk/src/ports/SkFontHost_FreeType_common.h
===================================================================
--- trunk/src/ports/SkFontHost_FreeType_common.h (revision 8166)
+++ trunk/src/ports/SkFontHost_FreeType_common.h (working copy)
@@ -11,6 +11,8 @@
#include "SkGlyph.h"
#include "SkScalerContext.h"
+#include "SkTypeface.h"
+
#include <ft2build.h>
#include FT_FREETYPE_H
@@ -26,19 +28,34 @@
class SkScalerContext_FreeType_Base : public SkScalerContext {
-public:
+protected:
// See http://freetype.sourceforge.net/freetype2/docs/reference/ft2-bitmap_handling.html#FT_Bitmap_Embolden
// This value was chosen by eyeballing the result in Firefox and trying to match it.
static const FT_Pos kBitmapEmboldenStrength = 1 << 6;
-
- SkScalerContext_FreeType_Base(const SkDescriptor *desc)
- : SkScalerContext(desc)
+
+ SkScalerContext_FreeType_Base(SkTypeface* typeface, const SkDescriptor *desc)
+ : INHERITED(typeface, desc)
{}
-
-protected:
+
void generateGlyphImage(FT_Face face, const SkGlyph& glyph);
void generateGlyphPath(FT_Face face, SkPath* path);
void emboldenOutline(FT_Face face, FT_Outline* outline);
+
+private:
+ typedef SkScalerContext INHERITED;
};
+class SkTypeface_FreeType : public SkTypeface {
+protected:
+ SkTypeface_FreeType(Style style, SkFontID uniqueID, bool isFixedWidth)
+ : INHERITED(style, uniqueID, isFixedWidth) {}
+
+ virtual SkScalerContext* onCreateScalerContext(
+ const SkDescriptor*) const SK_OVERRIDE;
+ virtual void onFilterRec(SkScalerContextRec*) const SK_OVERRIDE;
+
+private:
+ typedef SkTypeface INHERITED;
+};
+
#endif // SKFONTHOST_FREETYPE_COMMON_H_

Powered by Google App Engine
This is Rietveld 408576698