| OLD | NEW |
| 1 /* | 1 /* |
| 2 * Copyright 2014 Google Inc. | 2 * Copyright 2014 Google Inc. |
| 3 * | 3 * |
| 4 * Use of this source code is governed by a BSD-style license that can be | 4 * Use of this source code is governed by a BSD-style license that can be |
| 5 * found in the LICENSE file. | 5 * found in the LICENSE file. |
| 6 */ | 6 */ |
| 7 | 7 |
| 8 #include "sk_tool_utils.h" | 8 #include "sk_tool_utils.h" |
| 9 #include "sk_tool_utils_flags.h" | 9 #include "sk_tool_utils_flags.h" |
| 10 | 10 |
| (...skipping 160 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 171 void write_pixels(SkCanvas* canvas, const SkBitmap& bitmap, int x, int y, | 171 void write_pixels(SkCanvas* canvas, const SkBitmap& bitmap, int x, int y, |
| 172 SkColorType colorType, SkAlphaType alphaType) { | 172 SkColorType colorType, SkAlphaType alphaType) { |
| 173 SkBitmap tmp(bitmap); | 173 SkBitmap tmp(bitmap); |
| 174 tmp.lockPixels(); | 174 tmp.lockPixels(); |
| 175 | 175 |
| 176 const SkImageInfo info = SkImageInfo::Make(tmp.width(), tmp.height(), colorT
ype, alphaType); | 176 const SkImageInfo info = SkImageInfo::Make(tmp.width(), tmp.height(), colorT
ype, alphaType); |
| 177 | 177 |
| 178 canvas->writePixels(info, tmp.getPixels(), tmp.rowBytes(), x, y); | 178 canvas->writePixels(info, tmp.getPixels(), tmp.rowBytes(), x, y); |
| 179 } | 179 } |
| 180 | 180 |
| 181 SkShader* create_checkerboard_shader(SkColor c1, SkColor c2, int size) { | 181 sk_sp<SkShader> create_checkerboard_shader(SkColor c1, SkColor c2, int size) { |
| 182 SkBitmap bm; | 182 SkBitmap bm; |
| 183 bm.allocN32Pixels(2 * size, 2 * size); | 183 bm.allocN32Pixels(2 * size, 2 * size); |
| 184 bm.eraseColor(c1); | 184 bm.eraseColor(c1); |
| 185 bm.eraseArea(SkIRect::MakeLTRB(0, 0, size, size), c2); | 185 bm.eraseArea(SkIRect::MakeLTRB(0, 0, size, size), c2); |
| 186 bm.eraseArea(SkIRect::MakeLTRB(size, size, 2 * size, 2 * size), c2); | 186 bm.eraseArea(SkIRect::MakeLTRB(size, size, 2 * size, 2 * size), c2); |
| 187 return SkShader::CreateBitmapShader( | 187 return SkShader::MakeBitmapShader( |
| 188 bm, SkShader::kRepeat_TileMode, SkShader::kRepeat_TileMode); | 188 bm, SkShader::kRepeat_TileMode, SkShader::kRepeat_TileMode); |
| 189 } | 189 } |
| 190 | 190 |
| 191 SkBitmap create_checkerboard_bitmap(int w, int h, SkColor c1, SkColor c2, int ch
eckSize) { | 191 SkBitmap create_checkerboard_bitmap(int w, int h, SkColor c1, SkColor c2, int ch
eckSize) { |
| 192 SkBitmap bitmap; | 192 SkBitmap bitmap; |
| 193 bitmap.allocN32Pixels(w, h); | 193 bitmap.allocN32Pixels(w, h); |
| 194 SkCanvas canvas(bitmap); | 194 SkCanvas canvas(bitmap); |
| 195 | 195 |
| 196 sk_tool_utils::draw_checkerboard(&canvas, c1, c2, checkSize); | 196 sk_tool_utils::draw_checkerboard(&canvas, c1, c2, checkSize); |
| 197 return bitmap; | 197 return bitmap; |
| 198 } | 198 } |
| 199 | 199 |
| 200 void draw_checkerboard(SkCanvas* canvas, SkColor c1, SkColor c2, int size) { | 200 void draw_checkerboard(SkCanvas* canvas, SkColor c1, SkColor c2, int size) { |
| 201 SkPaint paint; | 201 SkPaint paint; |
| 202 paint.setShader(create_checkerboard_shader(c1, c2, size))->unref(); | 202 paint.setShader(create_checkerboard_shader(c1, c2, size)); |
| 203 paint.setXfermodeMode(SkXfermode::kSrc_Mode); | 203 paint.setXfermodeMode(SkXfermode::kSrc_Mode); |
| 204 canvas->drawPaint(paint); | 204 canvas->drawPaint(paint); |
| 205 } | 205 } |
| 206 | 206 |
| 207 SkBitmap create_string_bitmap(int w, int h, SkColor c, int x, int y, | 207 SkBitmap create_string_bitmap(int w, int h, SkColor c, int x, int y, |
| 208 int textSize, const char* str) { | 208 int textSize, const char* str) { |
| 209 SkBitmap bitmap; | 209 SkBitmap bitmap; |
| 210 bitmap.allocN32Pixels(w, h); | 210 bitmap.allocN32Pixels(w, h); |
| 211 SkCanvas canvas(bitmap); | 211 SkCanvas canvas(bitmap); |
| 212 | 212 |
| (...skipping 224 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 437 for (int y = 0; y < src.height(); ++y) { | 437 for (int y = 0; y < src.height(); ++y) { |
| 438 for (int x = 0; x < src.width(); ++x) { | 438 for (int x = 0; x < src.width(); ++x) { |
| 439 *dst.getAddr32(x, y) = blur_pixel(src, x, y, kernel.get(), wh); | 439 *dst.getAddr32(x, y) = blur_pixel(src, x, y, kernel.get(), wh); |
| 440 } | 440 } |
| 441 } | 441 } |
| 442 | 442 |
| 443 return dst; | 443 return dst; |
| 444 } | 444 } |
| 445 | 445 |
| 446 } // namespace sk_tool_utils | 446 } // namespace sk_tool_utils |
| OLD | NEW |