Add docs for SkMatrix, SkRect, SkIRect, SkBitmap
Also minor changes to earlier docs.
Many small changes to improve indentation in generated includes.
Added support for matrix math illustrations.
Docs-Preview: https://skia.org/?cl=58500
Bug: skia:6898
Change-Id: I7da58ad55f82d7fd41d19288beb2cd71730fb01f
Reviewed-on: https://skia-review.googlesource.com/58500
Commit-Queue: Cary Clark <caryclark@skia.org>
Reviewed-by: Cary Clark <caryclark@google.com>
Reviewed-by: Cary Clark <caryclark@skia.org>
diff --git a/docs/SkCanvas_Reference.bmh b/docs/SkCanvas_Reference.bmh
index 486fe46..3c836b4 100644
--- a/docs/SkCanvas_Reference.bmh
+++ b/docs/SkCanvas_Reference.bmh
@@ -975,14 +975,11 @@
#Method bool readPixels(const SkImageInfo& dstInfo, void* dstPixels, size_t dstRowBytes,
int srcX, int srcY)
-Copies rectangle of pixels from Canvas into dstPixels. Matrix and Clip are
-ignored. Source rectangle corners are (srcX, srcY) and
-#Formula
-(this->imageInfo.width(), this->imageInfo.height())
-##
-.
+Copies Rect of pixels from Canvas into dstPixels. Matrix and Clip are
+ignored. Source Rect corners are (srcX, srcY) and
+(imageInfo().width(), imageInfo().height()).
-Destination rectangle corners are (0, 0) and (bitmap.width(), bitmap.height()).
+Destination Rect corners are (0, 0) and (bitmap.width(), bitmap.height()).
Copies each readable pixel intersecting both rectangles, without scaling,
converting to dstInfo.colorType() and dstInfo.alphaType() if required.
@@ -995,7 +992,7 @@
Pixel values are converted only if Image_Color_Type and Image_Alpha_Type
do not match. Only pixels within both source and destination rectangles
-are copied. dstPixels contents outside the rectangle intersection are unchanged.
+are copied. dstPixels contents outside Rect intersection are unchanged.
Pass negative values for srcX or srcY to offset pixels across or down destination.
@@ -1070,14 +1067,11 @@
#Method bool readPixels(const SkPixmap& pixmap, int srcX, int srcY)
-Copies rectangle of pixels from Canvas into pixmap. Matrix and Clip are
-ignored. Source rectangle corners are (srcX, srcY) and
-#Formula
-(this->imageInfo.width(), this->imageInfo.height())
-##
-.
+Copies Rect of pixels from Canvas into pixmap. Matrix and Clip are
+ignored. Source Rect corners are (srcX, srcY) and
+(imageInfo().width(), imageInfo().height()).
-Destination rectangle corners are (0, 0) and (bitmap.width(), bitmap.height()).
+Destination Rect corners are (0, 0) and (bitmap.width(), bitmap.height()).
Copies each readable pixel intersecting both rectangles, without scaling,
converting to pixmap.colorType() and pixmap.alphaType() if required.
@@ -1089,8 +1083,8 @@
Caller must allocate pixel storage in pixmap if needed.
Pixel values are converted only if Image_Color_Type and Image_Alpha_Type
-do not match. Only pixels within both source and destination rectangles
-are copied. pixmap pixels contents outside the rectangle intersection are unchanged.
+do not match. Only pixels within both source and destination Rects
+are copied. pixmap pixels contents outside Rect intersection are unchanged.
Pass negative values for srcX or srcY to offset pixels across or down pixmap.
@@ -1136,14 +1130,11 @@
#Method bool readPixels(const SkBitmap& bitmap, int srcX, int srcY)
-Copies rectangle of pixels from Canvas into bitmap. Matrix and Clip are
-ignored. Source rectangle corners are (srcX, srcY) and
-#Formula
-(this->imageInfo.width(), this->imageInfo.height())
-##
-.
+Copies Rect of pixels from Canvas into bitmap. Matrix and Clip are
+ignored. Source Rect corners are (srcX, srcY) and
+(imageInfo().width(), imageInfo().height()).
-Destination rectangle corners are (0, 0) and (bitmap.width(), bitmap.height()).
+Destination Rect corners are (0, 0) and (bitmap.width(), bitmap.height()).
Copies each readable pixel intersecting both rectangles, without scaling,
converting to bitmap.colorType() and bitmap.alphaType() if required.
@@ -1156,7 +1147,7 @@
Bitmap values are converted only if Image_Color_Type and Image_Alpha_Type
do not match. Only pixels within both source and destination rectangles
-are copied. Bitmap pixels outside the rectangle intersection are unchanged.
+are copied. Bitmap pixels outside Rect intersection are unchanged.
Pass negative values for srcX or srcY to offset pixels across or down bitmap.
@@ -1202,24 +1193,13 @@
#Method bool writePixels(const SkImageInfo& info, const void* pixels, size_t rowBytes, int x, int y)
-Copies rectangle from pixels to Canvas. Matrix and Clip are ignored.
-Source rectangle corners are (0, 0) and (info.width(), info.height()).
-Destination rectangle corners are (x, y) and
-#Formula
-(this->imageInfo.width(), this->imageInfo.height())
-##
-.
+Copies Rect from pixels to Canvas. Matrix and Clip are ignored.
+Source Rect corners are (0, 0) and (info.width(), info.height()).
+Destination Rect corners are (x, y) and
+(imageInfo().width(), imageInfo().height()).
Copies each readable pixel intersecting both rectangles, without scaling,
-converting to
-#Formula
-this->imageInfo.colorType()
-##
-and
-#Formula
-this->imageInfo.alphaType()
-##
-if required.
+converting to imageInfo().colorType() and imageInfo().alphaType() if required.
Pixels are writable when Device is raster, or backed by a GPU.
Pixels are not writable when SkCanvas is returned by SkDocument::beginPage,
@@ -1228,7 +1208,7 @@
Pixel values are converted only if Image_Color_Type and Image_Alpha_Type
do not match. Only pixels within both source and destination rectangles
-are copied. Canvas pixels outside the rectangle intersection are unchanged.
+are copied. Canvas pixels outside Rect intersection are unchanged.
Pass negative values for x or y to offset pixels to the left or
above Canvas pixels.
@@ -1237,8 +1217,8 @@
#List
# Source and destination rectangles do not intersect. ##
-# pixels could not be converted to this->imageInfo.colorType() or
-this->imageInfo.alphaType(). ##
+# pixels could not be converted to this->imageInfo().colorType() or
+this->imageInfo().alphaType(). ##
# Canvas pixels are not writable; for instance, Canvas is document-based. ##
# rowBytes is too small to contain one row of pixels. ##
##
@@ -1270,25 +1250,14 @@
#Method bool writePixels(const SkBitmap& bitmap, int x, int y)
-Copies rectangle from pixels to Canvas. Matrix and Clip are ignored.
-Source rectangle corners are (0, 0) and (bitmap.width(), bitmap.height()).
+Copies Rect from pixels to Canvas. Matrix and Clip are ignored.
+Source Rect corners are (0, 0) and (bitmap.width(), bitmap.height()).
-Destination rectangle corners are (x, y) and
-#Formula
-(this->imageInfo.width(), this->imageInfo.height())
-##
-.
+Destination Rect corners are (x, y) and
+(imageInfo().width(), imageInfo().height()).
Copies each readable pixel intersecting both rectangles, without scaling,
-converting to
-#Formula
-this->imageInfo.colorType()
-##
-and
-#Formula
-this->imageInfo.alphaType()
-##
-if required.
+converting to imageInfo().colorType() and imageInfo().alphaType() if required.
Pixels are writable when Device is raster, or backed by a GPU.
Pixels are not writable when SkCanvas is returned by SkDocument::beginPage,
@@ -1297,7 +1266,7 @@
Pixel values are converted only if Image_Color_Type and Image_Alpha_Type
do not match. Only pixels within both source and destination rectangles
-are copied. Canvas pixels outside the rectangle intersection are unchanged.
+are copied. Canvas pixels outside Rect intersection are unchanged.
Pass negative values for x or y to offset pixels to the left or
above Canvas pixels.
@@ -1307,8 +1276,8 @@
#List
# Source and destination rectangles do not intersect. ##
# bitmap does not have allocated pixels. ##
-# bitmap pixels could not be converted to this->imageInfo.colorType() or
-this->imageInfo.alphaType(). ##
+# bitmap pixels could not be converted to this->imageInfo().colorType() or
+this->imageInfo().alphaType(). ##
# Canvas pixels are not writable; for instance, Canvas is document based. ##
# bitmap pixels are inaccessible; for instance, bitmap wraps a texture. ##
##
@@ -4687,14 +4656,6 @@
# ------------------------------------------------------------------------------
#Struct Lattice
- Lattice divides Bitmap or Image into a rectangular grid.
- Grid entries on even columns and even rows are fixed; these entries are
- always drawn at their original size if the destination is large enough.
- If the destination side is too small to hold the fixed entries, all fixed
- entries are proportionately scaled down to fit.
- The grid entries not on even columns and rows are scaled to fit the
- remaining space, if any.
-
#Code
struct Lattice {
enum Flags {...
@@ -4708,6 +4669,14 @@
};
##
+ Lattice divides Bitmap or Image into a rectangular grid.
+ Grid entries on even columns and even rows are fixed; these entries are
+ always drawn at their original size if the destination is large enough.
+ If the destination side is too small to hold the fixed entries, all fixed
+ entries are proportionately scaled down to fit.
+ The grid entries not on even columns and rows are scaled to fit the
+ remaining space, if any.
+
#Enum Flags
#Code
enum Flags : uint8_t {
@@ -6142,8 +6111,8 @@
#Method void restore()
-Restores Canvas to saved state immediately. Subsequent calls and class
-destructor have no effect.
+Restores Canvas to saved state immediately. Subsequent calls and
+~SkAutoCanvasRestore have no effect.
#Example
// incomplete