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. 3 #include "tools/fiddle/examples.h" 4 // HASH=c7bb6248e4735b8d1a32d02fba40d344 5 REG_FIDDLE(Paint_setStyle, 256, 256, false, 0) { draw(SkCanvas * canvas)6 void draw(SkCanvas* canvas) { 7 SkPaint paint; 8 paint.setStrokeWidth(5); 9 SkRegion region; 10 region.op({140, 10, 160, 30}, SkRegion::kUnion_Op); 11 region.op({170, 40, 190, 60}, SkRegion::kUnion_Op); 12 SkBitmap bitmap; 13 bitmap.setInfo(SkImageInfo::MakeA8(50, 50), 50); 14 uint8_t pixels[50][50]; 15 for (int x = 0; x < 50; ++x) { 16 for (int y = 0; y < 50; ++y) { 17 pixels[y][x] = (x + y) % 5 ? 0xFF : 0x00; 18 } 19 } 20 bitmap.setPixels(pixels); 21 for (auto style : { SkPaint::kFill_Style, 22 SkPaint::kStroke_Style, 23 SkPaint::kStrokeAndFill_Style }) { 24 paint.setStyle(style); 25 canvas->drawLine(10, 10, 60, 60, paint); 26 canvas->drawRect({80, 10, 130, 60}, paint); 27 canvas->drawRegion(region, paint); 28 canvas->drawImage(bitmap.asImage(), 200, 10, SkSamplingOptions(), &paint); 29 canvas->translate(0, 80); 30 } 31 } 32 } // END FIDDLE 33