Lines Matching defs:canvas

56     void onDraw(SkCanvas* canvas) override {
96 canvas->translate(20, 20);
97 canvas->scale(3 * SK_Scalar1 / 4, 3 * SK_Scalar1 / 4);
113 canvas->drawRect(bounds, boundPaint);
114 canvas->clipRect(bounds);
115 canvas->saveLayer(&bounds, nullptr);
119 canvas->save();
121 this->drawHairlines(canvas, path, clipA, clipB);
125 canvas->save();
131 canvas->clipPath(clipA, fDoAAClip);
132 canvas->clipPath(clipB, gOps[op].fOp, fDoAAClip);
135 // canvas.
141 canvas->clipRect(rectClip);
145 canvas->drawPath(path, pathPaint);
146 canvas->restore();
153 canvas->drawSimpleText(aTxt, strlen(aTxt), SkTextEncoding::kUTF8, txtX, 220, font, paint);
156 canvas->drawSimpleText(gOps[op].fName, strlen(gOps[op].fName), SkTextEncoding::kUTF8, txtX, 220,
161 canvas->drawSimpleText(bTxt, strlen(bTxt), SkTextEncoding::kUTF8, txtX, 220, font, paint);
163 canvas->translate(250,0);
165 canvas->restore();
166 canvas->translate(0, 250);
170 canvas->restore();
174 void drawHairlines(SkCanvas* canvas, const SkPath& path,
183 canvas->drawPath(path, paint);
187 canvas->drawPath(clipA, paint);
189 canvas->drawPath(clipB, paint);
211 DEF_SIMPLE_GM(clip_shader, canvas, 840, 650) {
218 canvas->translate(10, 10);
219 canvas->drawImage(img, 0, 0);
221 canvas->save();
222 canvas->translate(img->width() + 10, 0);
223 canvas->clipShader(sh, SkClipOp::kIntersect);
225 canvas->drawRect(r, p);
226 canvas->restore();
228 canvas->save();
229 canvas->translate(0, img->height() + 10);
230 canvas->clipShader(sh, SkClipOp::kDifference);
232 canvas->drawRect(r, p);
233 canvas->restore();
235 canvas->save();
236 canvas->translate(img->width() + 10, img->height() + 10);
237 canvas->clipShader(sh, SkClipOp::kIntersect);
238 canvas->save();
240 canvas->clipShader(img->makeShader(SkTileMode::kRepeat, SkTileMode::kRepeat,
242 canvas->drawImage(img, 0, 0);
244 canvas->restore();
245 canvas->restore();
248 DEF_SIMPLE_GM(clip_shader_layer, canvas, 430, 320) {
254 canvas->translate(10, 10);
256 canvas->clipRect(r);
257 canvas->clipShader(sh);
259 canvas->saveLayer(&r, nullptr);
260 canvas->drawColor(0xFFFF0000);
261 canvas->restore();
264 DEF_SIMPLE_GM(clip_shader_nested, canvas, 256, 256) {
275 canvas->save();
276 canvas->clipShader(s);
277 canvas->scale(2.f, 2.f);
278 canvas->clipShader(s);
279 canvas->drawRect(SkRect::MakeWH(w, h), p);
280 canvas->restore();
282 canvas->translate(0.f, 2.f * h);
285 canvas->save();
287 canvas->drawRect(SkRect::MakeWH(w, h), p);
288 canvas->restore();
293 // Where is canvas->concat(persp) called relative to the clipShader calls.
320 static void draw_banner(SkCanvas* canvas, Config config) {
343 canvas->drawString(banner.c_str(), 20.f, -30.f, kFont, SkPaint());
348 DEF_SIMPLE_GM(clip_shader_persp, canvas, 1370, 1030) {
383 canvas->save();
385 draw_banner(canvas, config);
400 canvas->concat(persp);
404 canvas->clipShader(config.fOrder == kClipImageFirst ? imgShader : gradShader);
408 canvas->concat(persp);
412 canvas->clipShader(config.fOrder == kClipImageFirst ? gradShader : imgShader);
416 canvas->concat(persp);
420 canvas->clipIRect(img->bounds());
421 canvas->clear(SK_ColorBLACK);
422 canvas->drawImage(img, 0, 0);
424 canvas->restore();
430 canvas->translate(10.f, 10.f);
433 canvas->save();
434 canvas->translate(-grid.fLeft, -grid.fTop);
436 canvas->translate(0.f, grid.height());
438 canvas->restore();
440 canvas->translate(grid.width(), 0.f);
444 DEF_SIMPLE_GM(clip_shader_difference, canvas, 512, 512) {
446 canvas->clear(SK_ColorGRAY);
460 canvas->save();
461 canvas->translate(0, 0);
462 canvas->clipShader(shader, SkClipOp::kDifference);
463 canvas->drawRect(rect, paint);
464 canvas->restore();
468 canvas->save();
469 canvas->translate(256, 0);
470 canvas->clipShader(shader, SkClipOp::kDifference);
471 canvas->drawRRect(SkRRect::MakeRectXY(rect, 64.f, 64.f), paint);
472 canvas->restore();
476 canvas->save();
477 canvas->translate(0, 256);
478 canvas->clipShader(shader, SkClipOp::kDifference);
491 canvas->drawPath(path, paint);
492 canvas->restore();
496 canvas->save();
497 canvas->translate(256, 256);
498 canvas->clipShader(shader, SkClipOp::kDifference);
500 canvas->drawString("Hello", 32.f, y * 64.f, SkFont(nullptr, 64.f), paint);
502 canvas->restore();