Chromium Code Reviews| Index: gm/imagefiltersgraph.cpp |
| diff --git a/gm/imagefiltersgraph.cpp b/gm/imagefiltersgraph.cpp |
| index 3f9fe3fa95167192a4909025c7b599f4a3d37021..d31d76a7089f7b8386a207338aecf1249d1e59ac 100644 |
| --- a/gm/imagefiltersgraph.cpp |
| +++ b/gm/imagefiltersgraph.cpp |
| @@ -9,11 +9,12 @@ |
| #include "SkArithmeticMode.h" |
| #include "SkDevice.h" |
| -#include "SkBitmapSource.h" |
| #include "SkBlurImageFilter.h" |
| #include "SkColorFilter.h" |
| #include "SkColorFilterImageFilter.h" |
| #include "SkColorMatrixFilter.h" |
| +#include "SkImage.h" |
| +#include "SkImageSource.h" |
| #include "SkReadBuffer.h" |
| #include "SkWriteBuffer.h" |
| #include "SkMergeImageFilter.h" |
| @@ -107,24 +108,24 @@ protected: |
| return SkString("imagefiltersgraph"); |
| } |
|
robertphillips
2015/09/15 17:43:52
Can this be static & DrawClippedImage ?
f(malita)
2015/09/15 18:12:53
Done.
|
| - void drawClippedBitmap(SkCanvas* canvas, const SkBitmap& bitmap, const SkPaint& paint) { |
| + void drawClippedImage(SkCanvas* canvas, const SkImage* image, const SkPaint& paint) { |
| canvas->save(); |
| - canvas->clipRect(SkRect::MakeXYWH(0, 0, |
| - SkIntToScalar(bitmap.width()), SkIntToScalar(bitmap.height()))); |
| - canvas->drawBitmap(bitmap, 0, 0, &paint); |
| + canvas->clipRect(SkRect::MakeIWH(image->width(), image->height())); |
| + canvas->drawImage(image, 0, 0, &paint); |
| canvas->restore(); |
| } |
| SkISize onISize() override { return SkISize::Make(500, 150); } |
| void onOnceBeforeDraw() override { |
| - fBitmap = sk_tool_utils::create_string_bitmap(100, 100, SK_ColorWHITE, 20, 70, 96, "e"); |
| + fImage.reset(SkImage::NewFromBitmap( |
| + sk_tool_utils::create_string_bitmap(100, 100, SK_ColorWHITE, 20, 70, 96, "e"))); |
| } |
| void onDraw(SkCanvas* canvas) override { |
| canvas->clear(SK_ColorBLACK); |
| { |
| - SkAutoTUnref<SkImageFilter> bitmapSource(SkBitmapSource::Create(fBitmap)); |
| + SkAutoTUnref<SkImageFilter> bitmapSource(SkImageSource::Create(fImage)); |
| SkAutoTUnref<SkColorFilter> cf(SkColorFilter::CreateModeFilter(SK_ColorRED, |
| SkXfermode::kSrcIn_Mode)); |
| SkAutoTUnref<SkImageFilter> blur(SkBlurImageFilter::Create(4.0f, 4.0f, bitmapSource)); |
| @@ -152,7 +153,7 @@ protected: |
| SkPaint paint; |
| paint.setImageFilter(blendColor); |
| - drawClippedBitmap(canvas, fBitmap, paint); |
| + drawClippedImage(canvas, fImage, paint); |
| canvas->translate(SkIntToScalar(100), 0); |
| } |
| { |
| @@ -171,7 +172,7 @@ protected: |
| SkPaint paint; |
| paint.setImageFilter(arithFilter); |
| - drawClippedBitmap(canvas, fBitmap, paint); |
| + drawClippedImage(canvas, fImage, paint); |
| canvas->translate(SkIntToScalar(100), 0); |
| } |
| { |
| @@ -185,7 +186,7 @@ protected: |
| SkPaint paint; |
| paint.setImageFilter(blend); |
| - drawClippedBitmap(canvas, fBitmap, paint); |
| + drawClippedImage(canvas, fImage, paint); |
| canvas->translate(SkIntToScalar(100), 0); |
| } |
| { |
| @@ -211,7 +212,7 @@ protected: |
| private: |
| typedef GM INHERITED; |
| - SkBitmap fBitmap; |
| + SkAutoTUnref<SkImage> fImage; |
| }; |
| /////////////////////////////////////////////////////////////////////////////// |