Index: src/core/SkPictureRecord.cpp |
diff --git a/src/core/SkPictureRecord.cpp b/src/core/SkPictureRecord.cpp |
index 53ecdd0be68c08e332c93cc8598d92b32b76b264..07811fb1280513e597669f71c2de7b66ad2370ed 100644 |
--- a/src/core/SkPictureRecord.cpp |
+++ b/src/core/SkPictureRecord.cpp |
@@ -7,6 +7,7 @@ |
#include "SkPictureRecord.h" |
#include "SkDevice.h" |
+#include "SkImage_Base.h" |
#include "SkPatchUtils.h" |
#include "SkPixelRef.h" |
#include "SkRRect.h" |
@@ -563,6 +564,22 @@ void SkPictureRecord::onDrawBitmapRect(const SkBitmap& bitmap, const SkRect* src |
this->validate(initialOffset, size); |
} |
+void SkPictureRecord::onDrawImage(const SkImage* image, SkScalar x, SkScalar y, |
+ const SkPaint* paint) { |
+ SkBitmap bm; |
+ if (as_IB(image)->getROPixels(&bm)) { |
+ this->SkPictureRecord::onDrawBitmap(bm, x, y, paint); |
+ } |
+} |
+ |
+void SkPictureRecord::onDrawImageRect(const SkImage* image, const SkRect* src, const SkRect& dst, |
+ const SkPaint* paint) { |
+ SkBitmap bm; |
+ if (as_IB(image)->getROPixels(&bm)) { |
+ this->SkPictureRecord::onDrawBitmapRect(bm, src, dst, paint, kNone_DrawBitmapRectFlag); |
+ } |
+} |
+ |
void SkPictureRecord::onDrawBitmapNine(const SkBitmap& bitmap, const SkIRect& center, |
const SkRect& dst, const SkPaint* paint) { |
// op + paint index + bitmap id + center + dst rect |