114 {
115
117
119
120
123
124
126
131
133 boundsHalfWidth, boundsHalfHeight);
135 boundsHalfWidth, boundsHalfHeight);
137 interiorClip.
inset(boundsQuarterWidth, boundsQuarterHeight);
138
139 const SkRect clipRects[] = {
bounds, upperLeftClip, lowerRightClip, interiorClip};
140
142 for (
size_t x = 0;
x <
count; ++
x) {
144 if (
x == (
count >> 1) - 1) {
148 } else {
150 }
151 }
152 }
constexpr SkColor SK_ColorGRAY
constexpr SkColor SK_ColorBLACK
#define SkScalarFloorToScalar(x)
void translate(SkScalar dx, SkScalar dy)
void drawColor(SkColor color, SkBlendMode mode=SkBlendMode::kSrcOver)
const SkRect & bounds() const
Optional< SkRect > bounds
static void draw_blob(SkCanvas *canvas, const SkTextBlob *blob, const SkPaint &skPaint, const SkRect &clipRect)
void inset(float dx, float dy)
static constexpr SkRect MakeXYWH(float x, float y, float w, float h)