Flutter Engine
The Flutter Engine
Loading...
Searching...
No Matches
AutoCanvasRestore_SkCanvas_star.cpp
Go to the documentation of this file.
1// Copyright 2019 Google LLC.
2// Use of this source code is governed by a BSD-style license that can be found in the LICENSE file.
4// HASH=466ef576b88e29d7252422db7adeed1c
5REG_FIDDLE(AutoCanvasRestore_SkCanvas_star, 256, 128, false, 0) {
6void draw(SkCanvas* canvas) {
8 paint.setAntiAlias(true);
9 SkFont font(fontMgr->matchFamilyStyle(nullptr, {}), 64);
10 for (SkScalar sx : { -1, 1 } ) {
11 for (SkScalar sy : { -1, 1 } ) {
12 SkAutoCanvasRestore autoRestore(canvas, true);
13 SkMatrix m = SkMatrix::MakeAll(sx, 1, 96, 0, sy, 64, 0, 0, 1);
14 canvas->concat(m);
15 canvas->drawString("R", 0, 0, font, paint);
16 }
17 }
18}
19} // END FIDDLE
static void draw(SkCanvas *canvas, SkRect &target, int x, int y)
Definition aaclip.cpp:27
void concat(const SkMatrix &matrix)
void drawString(const char str[], SkScalar x, SkScalar y, const SkFont &font, const SkPaint &paint)
Definition SkCanvas.h:1803
sk_sp< SkTypeface > matchFamilyStyle(const char familyName[], const SkFontStyle &) const
static SkMatrix MakeAll(SkScalar scaleX, SkScalar skewX, SkScalar transX, SkScalar skewY, SkScalar scaleY, SkScalar transY, SkScalar pers0, SkScalar pers1, SkScalar pers2)
Definition SkMatrix.h:179
const Paint & paint
sk_sp< SkFontMgr > fontMgr
Definition examples.cpp:32
#define REG_FIDDLE(NAME, W, H, TEXT, I)
Definition examples.h:60
float SkScalar
Definition extension.cpp:12