Index: include/core/SkBitmap.h |
diff --git a/include/core/SkBitmap.h b/include/core/SkBitmap.h |
index 51e9a9243a13b156ab8591d888b79bbbd11588e6..e6fbeb7019c9ab1c7bf5daf48b6148d0810d4746 100644 |
--- a/include/core/SkBitmap.h |
+++ b/include/core/SkBitmap.h |
@@ -591,6 +591,28 @@ public: |
} |
/** |
+ * Copy the bitmap's pixels into the specified buffer (pixels + rowBytes), |
+ * converting them into the requested format (SkImageInfo). The src pixels are read |
+ * starting at the specified (x,y) offset, relative to the top-left corner. |
+ * |
+ * The specified ImageInfo and (x,y) offset specifies a source rectangle |
+ * |
+ * srcR.setXYWH(x, y, info.width(), info.height()); |
+ * |
+ * SrcR is intersected with the bounds of the bitmap. If this intersection is not empty, |
+ * then we have two sets of pixels (of equal size), the "src" beginning at (x,y) |
+ * and the "dst" by info+pixels+rowBytes. Replace the dst pixels with the corresponding src |
+ * pixels, performing any colortype/alphatype transformations needed (in the case where the |
+ * src and dst have different colortypes or alphatypes). |
+ * |
+ * This call can fail, returning false, for several reasons: |
+ * - If srcR does not intersect the bitmap bounds. |
+ * - If the requested colortype/alphatype cannot be converted from the src's types. |
+ * - If the src pixels are not available. |
+ */ |
+ bool readPixels(const SkImageInfo&, void* pixels, size_t rowBytes, int x, int y) const; |
+ |
+ /** |
* Returns true if this bitmap's pixels can be converted into the requested |
* colorType, such that copyTo() could succeed. |
*/ |