diff options
author | 2015-01-26 12:49:00 -0800 | |
---|---|---|
committer | 2015-01-26 12:49:00 -0800 | |
commit | b0cce2c1d37d4bf5b89da6c70062209ac4e0e643 (patch) | |
tree | 4a7885c5e4c203b8b13918d19f9b9409ba013491 /tools/sk_tool_utils.cpp | |
parent | 2445216b7aa726d01918eaccd72c0650585d0314 (diff) |
s/sk_tools::DrawCheckerboard/sk_tool_utils::draw_checkerboard/
BUG=skia:
Review URL: https://codereview.chromium.org/873333004
Diffstat (limited to 'tools/sk_tool_utils.cpp')
-rw-r--r-- | tools/sk_tool_utils.cpp | 17 |
1 files changed, 17 insertions, 0 deletions
diff --git a/tools/sk_tool_utils.cpp b/tools/sk_tool_utils.cpp index 02001238e9..560384fb7c 100644 --- a/tools/sk_tool_utils.cpp +++ b/tools/sk_tool_utils.cpp @@ -10,6 +10,7 @@ #include "SkBitmap.h" #include "SkCanvas.h" +#include "SkShader.h" #include "SkTestScalerContext.h" DEFINE_bool(portableFonts, false, "Use portable fonts"); @@ -59,4 +60,20 @@ void write_pixels(SkCanvas* canvas, const SkBitmap& bitmap, int x, int y, canvas->writePixels(info, tmp.getPixels(), tmp.rowBytes(), x, y); } +SkShader* create_checkerboard_shader(SkColor c1, SkColor c2, int size) { + SkBitmap bm; + bm.allocN32Pixels(2 * size, 2 * size); + bm.eraseColor(c1); + bm.eraseArea(SkIRect::MakeLTRB(0, 0, size, size), c2); + bm.eraseArea(SkIRect::MakeLTRB(size, size, 2 * size, 2 * size), c2); + return SkShader::CreateBitmapShader( + bm, SkShader::kRepeat_TileMode, SkShader::kRepeat_TileMode); +} + +void draw_checkerboard(SkCanvas* canvas, SkColor c1, SkColor c2, int size) { + SkPaint paint; + paint.setShader(create_checkerboard_shader(c1, c2, size))->unref(); + canvas->drawPaint(paint); +} + } // namespace sk_tool_utils |