OLD | NEW |
1 /* | 1 /* |
2 * Copyright 2006 The Android Open Source Project | 2 * Copyright 2006 The Android Open Source Project |
3 * | 3 * |
4 * Use of this source code is governed by a BSD-style license that can be | 4 * Use of this source code is governed by a BSD-style license that can be |
5 * found in the LICENSE file. | 5 * found in the LICENSE file. |
6 */ | 6 */ |
7 | 7 |
8 #ifndef SkPaint_DEFINED | 8 #ifndef SkPaint_DEFINED |
9 #define SkPaint_DEFINED | 9 #define SkPaint_DEFINED |
10 | 10 |
(...skipping 17 matching lines...) Expand all Loading... |
28 class SkImageFilter; | 28 class SkImageFilter; |
29 class SkMaskFilter; | 29 class SkMaskFilter; |
30 class SkPath; | 30 class SkPath; |
31 class SkPathEffect; | 31 class SkPathEffect; |
32 struct SkPoint; | 32 struct SkPoint; |
33 class SkRasterizer; | 33 class SkRasterizer; |
34 class SkShader; | 34 class SkShader; |
35 class SkSurfaceProps; | 35 class SkSurfaceProps; |
36 class SkTypeface; | 36 class SkTypeface; |
37 | 37 |
38 typedef const SkGlyph& (*SkDrawCacheProc)(SkGlyphCache*, const char**, | |
39 SkFixed x, SkFixed y); | |
40 | |
41 typedef const SkGlyph& (*SkMeasureCacheProc)(SkGlyphCache*, const char**); | |
42 | |
43 #define kBicubicFilterBitmap_Flag kHighQualityFilterBitmap_Flag | 38 #define kBicubicFilterBitmap_Flag kHighQualityFilterBitmap_Flag |
44 | 39 |
45 /** \class SkPaint | 40 /** \class SkPaint |
46 | 41 |
47 The SkPaint class holds the style and color information about how to draw | 42 The SkPaint class holds the style and color information about how to draw |
48 geometries, text and bitmaps. | 43 geometries, text and bitmaps. |
49 */ | 44 */ |
50 | 45 |
51 class SK_API SkPaint { | 46 class SK_API SkPaint { |
52 public: | 47 public: |
(...skipping 970 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1023 if (skewX) { | 1018 if (skewX) { |
1024 matrix->postSkew(skewX, 0); | 1019 matrix->postSkew(skewX, 0); |
1025 } | 1020 } |
1026 return matrix; | 1021 return matrix; |
1027 } | 1022 } |
1028 | 1023 |
1029 SkMatrix* setTextMatrix(SkMatrix* matrix) const { | 1024 SkMatrix* setTextMatrix(SkMatrix* matrix) const { |
1030 return SetTextMatrix(matrix, fTextSize, fTextScaleX, fTextSkewX); | 1025 return SetTextMatrix(matrix, fTextSize, fTextScaleX, fTextSkewX); |
1031 } | 1026 } |
1032 | 1027 |
| 1028 typedef const SkGlyph& (*GlyphCacheProc)(SkGlyphCache*, const char**); |
| 1029 |
1033 SK_TO_STRING_NONVIRT() | 1030 SK_TO_STRING_NONVIRT() |
1034 | 1031 |
1035 private: | 1032 private: |
1036 SkTypeface* fTypeface; | 1033 SkTypeface* fTypeface; |
1037 SkPathEffect* fPathEffect; | 1034 SkPathEffect* fPathEffect; |
1038 SkShader* fShader; | 1035 SkShader* fShader; |
1039 SkXfermode* fXfermode; | 1036 SkXfermode* fXfermode; |
1040 SkMaskFilter* fMaskFilter; | 1037 SkMaskFilter* fMaskFilter; |
1041 SkColorFilter* fColorFilter; | 1038 SkColorFilter* fColorFilter; |
1042 SkRasterizer* fRasterizer; | 1039 SkRasterizer* fRasterizer; |
(...skipping 16 matching lines...) Expand all Loading... |
1059 unsigned fJoinType : 2; | 1056 unsigned fJoinType : 2; |
1060 unsigned fStyle : 2; | 1057 unsigned fStyle : 2; |
1061 unsigned fTextEncoding : 2; // 3 values | 1058 unsigned fTextEncoding : 2; // 3 values |
1062 unsigned fHinting : 2; | 1059 unsigned fHinting : 2; |
1063 unsigned fFilterQuality : 2; | 1060 unsigned fFilterQuality : 2; |
1064 //unsigned fFreeBits : 2; | 1061 //unsigned fFreeBits : 2; |
1065 } fBitfields; | 1062 } fBitfields; |
1066 uint32_t fBitfieldsUInt; | 1063 uint32_t fBitfieldsUInt; |
1067 }; | 1064 }; |
1068 | 1065 |
1069 SkDrawCacheProc getDrawCacheProc() const; | 1066 GlyphCacheProc getGlyphCacheProc(bool needFullMetrics) const; |
1070 SkMeasureCacheProc getMeasureCacheProc(bool needFullMetrics) const; | |
1071 | 1067 |
1072 SkScalar measure_text(SkGlyphCache*, const char* text, size_t length, | 1068 SkScalar measure_text(SkGlyphCache*, const char* text, size_t length, |
1073 int* count, SkRect* bounds) const; | 1069 int* count, SkRect* bounds) const; |
1074 | 1070 |
1075 enum class FakeGamma { | 1071 enum class FakeGamma { |
1076 Off = 0, On | 1072 Off = 0, On |
1077 }; | 1073 }; |
1078 | 1074 |
1079 /* | 1075 /* |
1080 * Allocs an SkDescriptor on the heap and return it to the caller as a refcn
ted | 1076 * Allocs an SkDescriptor on the heap and return it to the caller as a refcn
ted |
(...skipping 65 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1146 friend class GrStencilAndCoverTextContext; | 1142 friend class GrStencilAndCoverTextContext; |
1147 friend class GrPathRendering; | 1143 friend class GrPathRendering; |
1148 friend class GrTextUtils; | 1144 friend class GrTextUtils; |
1149 friend class GrGLPathRendering; | 1145 friend class GrGLPathRendering; |
1150 friend class SkScalerContext; | 1146 friend class SkScalerContext; |
1151 friend class SkTextBaseIter; | 1147 friend class SkTextBaseIter; |
1152 friend class SkCanonicalizePaint; | 1148 friend class SkCanonicalizePaint; |
1153 }; | 1149 }; |
1154 | 1150 |
1155 #endif | 1151 #endif |
OLD | NEW |