Index: gm/imagesource.cpp |
diff --git a/gm/bitmapsource.cpp b/gm/imagesource.cpp |
similarity index 54% |
copy from gm/bitmapsource.cpp |
copy to gm/imagesource.cpp |
index 155785b200b482bae46889beb230b25395a7628e..f4574d267c6f7b5a18f63aa9ed7b9878e54fd60b 100644 |
--- a/gm/bitmapsource.cpp |
+++ b/gm/imagesource.cpp |
@@ -7,24 +7,25 @@ |
#include "gm.h" |
-#include "SkBitmapSource.h" |
+#include "SkImage.h" |
+#include "SkImageSource.h" |
-// This GM exercises the SkBitmapSource ImageFilter class. |
+// This GM exercises the SkImageSource ImageFilter class. |
-class BitmapSourceGM : public skiagm::GM { |
+class ImageSourceGM : public skiagm::GM { |
public: |
- BitmapSourceGM() { |
- } |
+ ImageSourceGM() { } |
protected: |
SkString onShortName() override { |
- return SkString("bitmapsource"); |
+ return SkString("imagesource"); |
} |
SkISize onISize() override { return SkISize::Make(500, 150); } |
void onOnceBeforeDraw() override { |
- fBitmap = sk_tool_utils::create_string_bitmap(100, 100, 0xFFFFFFFF, 20, 70, 96, "e"); |
+ SkBitmap bm = sk_tool_utils::create_string_bitmap(100, 100, 0xFFFFFFFF, 20, 70, 96, "e"); |
+ fImage.reset(SkImage::NewFromBitmap(bm)); |
} |
static void FillRectFiltered(SkCanvas* canvas, const SkRect& clipRect, SkImageFilter* filter) { |
@@ -42,36 +43,38 @@ protected: |
SkRect srcRect = SkRect::MakeXYWH(20, 20, 30, 30); |
SkRect dstRect = SkRect::MakeXYWH(0, 10, 60, 60); |
SkRect clipRect = SkRect::MakeXYWH(0, 0, 100, 100); |
- SkRect bounds; |
- fBitmap.getBounds(&bounds); |
- SkAutoTUnref<SkImageFilter> bitmapSource(SkBitmapSource::Create(fBitmap)); |
- SkAutoTUnref<SkImageFilter> bitmapSourceSrcRect(SkBitmapSource::Create(fBitmap, srcRect, srcRect)); |
- SkAutoTUnref<SkImageFilter> bitmapSourceSrcRectDstRect(SkBitmapSource::Create(fBitmap, srcRect, dstRect)); |
- SkAutoTUnref<SkImageFilter> bitmapSourceDstRectOnly(SkBitmapSource::Create(fBitmap, bounds, dstRect)); |
+ SkRect bounds = SkRect::MakeIWH(fImage->width(), fImage->height()); |
+ SkAutoTUnref<SkImageFilter> imageSource(SkImageSource::Create(fImage)); |
+ SkAutoTUnref<SkImageFilter> imageSourceSrcRect( |
+ SkImageSource::Create(fImage, srcRect, srcRect, kHigh_SkFilterQuality)); |
+ SkAutoTUnref<SkImageFilter> imageSourceSrcRectDstRect( |
+ SkImageSource::Create(fImage, srcRect, dstRect, kHigh_SkFilterQuality)); |
+ SkAutoTUnref<SkImageFilter> imageSourceDstRectOnly( |
+ SkImageSource::Create(fImage, bounds, dstRect, kHigh_SkFilterQuality)); |
// Draw an unscaled bitmap. |
- FillRectFiltered(canvas, clipRect, bitmapSource); |
+ FillRectFiltered(canvas, clipRect, imageSource); |
canvas->translate(SkIntToScalar(100), 0); |
// Draw an unscaled subset of the source bitmap (srcRect -> srcRect). |
- FillRectFiltered(canvas, clipRect, bitmapSourceSrcRect); |
+ FillRectFiltered(canvas, clipRect, imageSourceSrcRect); |
canvas->translate(SkIntToScalar(100), 0); |
// Draw a subset of the bitmap scaled to a destination rect (srcRect -> dstRect). |
- FillRectFiltered(canvas, clipRect, bitmapSourceSrcRectDstRect); |
+ FillRectFiltered(canvas, clipRect, imageSourceSrcRectDstRect); |
canvas->translate(SkIntToScalar(100), 0); |
// Draw the entire bitmap scaled to a destination rect (bounds -> dstRect). |
- FillRectFiltered(canvas, clipRect, bitmapSourceDstRectOnly); |
+ FillRectFiltered(canvas, clipRect, imageSourceDstRectOnly); |
canvas->translate(SkIntToScalar(100), 0); |
} |
} |
private: |
- SkBitmap fBitmap; |
+ SkAutoTUnref<SkImage> fImage; |
typedef GM INHERITED; |
}; |
/////////////////////////////////////////////////////////////////////////////// |
-DEF_GM( return new BitmapSourceGM; ) |
+DEF_GM( return new ImageSourceGM; ) |