<ahref='SkPixmap_Reference#Pixmap'>Pixmap</a> provides a utility to pair <ahref='SkImageInfo_Reference#SkImageInfo'>SkImageInfo</a> with pixels and row bytes.
<ahref='SkPixmap_Reference#Pixmap'>Pixmap</a> is a low level class which provides convenience functions to access
raster destinations. <ahref='SkCanvas_Reference#Canvas'>Canvas</a> can not draw <ahref='SkPixmap_Reference#Pixmap'>Pixmap</a>, nor does <ahref='SkPixmap_Reference#Pixmap'>Pixmap</a> provide
Use <ahref='SkBitmap_Reference#Bitmap'>Bitmap</a> to draw pixels referenced by <ahref='SkPixmap_Reference#Pixmap'>Pixmap</a>; use <ahref='SkSurface_Reference#Surface'>Surface</a> to draw into
pixels referenced by <ahref='SkPixmap_Reference#Pixmap'>Pixmap</a>.
<ahref='SkPixmap_Reference#Pixmap'>Pixmap</a> does not try to manage the lifetime of the <ahref='undocumented#Pixel'>pixel</a> memory. Use <ahref='#Pixel_Ref'>Pixel_Ref</a>
to manage <ahref='undocumented#Pixel'>pixel</a> memory; <ahref='#Pixel_Ref'>Pixel_Ref</a> is safe across threads.
Creates an empty <ahref='SkPixmap_Reference#SkPixmap'>SkPixmap</a> without pixels, with <ahref='SkImageInfo_Reference#kUnknown_SkColorType'>kUnknown_SkColorType</a>, with
<ahref='SkImageInfo_Reference#kUnknown_SkAlphaType'>kUnknown_SkAlphaType</a>, and with a width and height of zero. Use
<ahref='#SkPixmap_reset'>reset()</a> to associate pixels, <ahref='SkImageInfo_Reference#SkColorType'>SkColorType</a>, <ahref='SkImageInfo_Reference#SkAlphaType'>SkAlphaType</a>, width, and height
after <ahref='SkPixmap_Reference#SkPixmap'>SkPixmap</a> has been created.
Creates <ahref='SkPixmap_Reference#SkPixmap'>SkPixmap</a> from <ahref='#SkPixmap_const_SkImageInfo_const_star_info'>info</a> width, height, <ahref='SkImageInfo_Reference#SkAlphaType'>SkAlphaType</a>, and <ahref='SkImageInfo_Reference#SkColorType'>SkColorType</a>.
<ahref='#SkPixmap_const_SkImageInfo_const_star_addr'>addr</a><ahref='SkPoint_Reference#Point'>points</a> to pixels, or nullptr. <ahref='#SkPixmap_const_SkImageInfo_const_star_rowBytes'>rowBytes</a> should be <ahref='#SkPixmap_const_SkImageInfo_const_star_info'>info</a>.<ahref='#SkImageInfo_width'>width()</a> times
<ahref='#SkPixmap_const_SkImageInfo_const_star_info'>info</a>.<ahref='#SkImageInfo_bytesPerPixel'>bytesPerPixel</a>(), or larger.
<ahref='#SkPixmap_const_SkImageInfo_const_star_addr'>addr</a> and <ahref='#SkPixmap_const_SkImageInfo_const_star_rowBytes'>rowBytes</a> agree with <ahref='#SkPixmap_const_SkImageInfo_const_star_info'>info</a>.
<ahref='SkPixmap_Reference#SkPixmap'>SkPixmap</a> may be later modified by <ahref='#SkPixmap_reset'>reset()</a> to change its <ahref='undocumented#Size'>size</a>, <ahref='undocumented#Pixel'>pixel</a> type, or
<td><ahref='undocumented#Size'>size</a> of one row of <ahref='#SkPixmap_const_SkImageInfo_const_star_addr'>addr</a>; width times <ahref='undocumented#Pixel'>pixel</a><ahref='undocumented#Size'>size</a>, or larger</td>
<div><fiddle-embedname="9a00774be57d7308313b3a9073e6e696"><div><ahref='SkImage_Reference#SkImage'>SkImage</a>::<ahref='#SkImage_MakeRasterCopy'>MakeRasterCopy</a> takes const <ahref='SkPixmap_Reference#SkPixmap'>SkPixmap</a>& as an argument. The example
constructs a <ahref='SkPixmap_Reference#SkPixmap'>SkPixmap</a> from the brace-delimited parameters.
Sets width, height, row bytes to zero; <ahref='undocumented#Pixel'>pixel</a> address to nullptr; <ahref='SkImageInfo_Reference#SkColorType'>SkColorType</a> to
<ahref='SkImageInfo_Reference#kUnknown_SkColorType'>kUnknown_SkColorType</a>; and <ahref='SkImageInfo_Reference#SkAlphaType'>SkAlphaType</a> to <ahref='SkImageInfo_Reference#kUnknown_SkAlphaType'>kUnknown_SkAlphaType</a>.
Sets width, height, <ahref='SkImageInfo_Reference#SkAlphaType'>SkAlphaType</a>, and <ahref='SkImageInfo_Reference#SkColorType'>SkColorType</a> from <ahref='#SkPixmap_reset_2_info'>info</a>.
Sets <ahref='undocumented#Pixel'>pixel</a> address from <ahref='#SkPixmap_reset_2_addr'>addr</a>, which may be nullptr.
Sets row bytes from <ahref='#SkPixmap_reset_2_rowBytes'>rowBytes</a>, which should be <ahref='#SkPixmap_reset_2_info'>info</a>.<ahref='#SkImageInfo_width'>width()</a> times
<ahref='#SkPixmap_reset_2_info'>info</a>.<ahref='#SkImageInfo_bytesPerPixel'>bytesPerPixel</a>(), or larger.
Does not check <ahref='#SkPixmap_reset_2_addr'>addr</a>. Asserts if built with SK_DEBUG defined and if <ahref='#SkPixmap_reset_2_rowBytes'>rowBytes</a> is
<td><ahref='undocumented#Size'>size</a> of one row of <ahref='#SkPixmap_reset_2_addr'>addr</a>; width times <ahref='undocumented#Pixel'>pixel</a><ahref='undocumented#Size'>size</a>, or larger</td>
Changes <ahref='undocumented#SkColorSpace'>SkColorSpace</a> in <ahref='SkImageInfo_Reference#SkImageInfo'>SkImageInfo</a>; preserves width, height, <ahref='SkImageInfo_Reference#SkAlphaType'>SkAlphaType</a>, and
<ahref='SkImageInfo_Reference#SkColorType'>SkColorType</a> in <ahref='SkImage_Reference#SkImage'>SkImage</a>, and leaves <ahref='undocumented#Pixel'>pixel</a> address and row bytes unchanged.
<ahref='undocumented#SkColorSpace'>SkColorSpace</a><ahref='undocumented#Reference_Count'>reference count</a> is incremented.
Sets <ahref='#SkPixmap_extractSubset_subset'>subset</a> width, height, <ahref='undocumented#Pixel'>pixel</a> address to intersection of <ahref='SkPixmap_Reference#SkPixmap'>SkPixmap</a> with <ahref='#SkPixmap_extractSubset_area'>area</a>,
if intersection is not empty; and return true. Otherwise, leave <ahref='#SkPixmap_extractSubset_subset'>subset</a> unchanged
Returns row bytes, the interval from one <ahref='undocumented#Pixel'>pixel</a> row to the next. Row bytes
is at least as large as: <code><ahref='#SkPixmap_width'>width()</a> * <ahref='#SkPixmap_info'>info()</a>.<ahref='#SkImageInfo_bytesPerPixel'>bytesPerPixel</a>()</code>.
It is up to the <ahref='SkPixmap_Reference#SkPixmap'>SkPixmap</a> creator to ensure that <ahref='undocumented#Pixel'>pixel</a> address is a useful value.
<ahref='#SkPixmap_addr_2'>addr(int x, int y)</a><ahref='#SkPixmap_addr8'>addr8</a><ahref='#SkPixmap_addr16'>addr16</a><ahref='#SkPixmap_addr32'>addr32</a><ahref='#SkPixmap_addr64'>addr64</a><ahref='#SkPixmap_info'>info()</a><ahref='#SkPixmap_rowBytes'>rowBytes</a>()
Returns <ahref='undocumented#SkColorSpace'>SkColorSpace</a>, the range of colors, associated with <ahref='SkImageInfo_Reference#SkImageInfo'>SkImageInfo</a>. The
reference count of <ahref='undocumented#SkColorSpace'>SkColorSpace</a> is unchanged. The returned <ahref='undocumented#SkColorSpace'>SkColorSpace</a> is
<div><fiddle-embedname="3421bb20a302d563832ba7bb45e0cc58"><div><ahref='undocumented#SkColorSpace'>SkColorSpace</a>::<ahref='#SkColorSpace_MakeSRGBLinear'>MakeSRGBLinear</a> creates <ahref='#Color_Space'>Color_Space</a> with linear gamma
and an sRGB gamut. This <ahref='#Color_Space'>Color_Space</a> gamma is not close to sRGB gamma.
Returns true if <ahref='SkImageInfo_Reference#SkAlphaType'>SkAlphaType</a> is <ahref='SkImageInfo_Reference#kOpaque_SkAlphaType'>kOpaque_SkAlphaType</a>.
Does not check if <ahref='SkImageInfo_Reference#SkColorType'>SkColorType</a> allows <ahref='SkColor_Reference#Alpha'>alpha</a>, or if any <ahref='undocumented#Pixel'>pixel</a> value has
Returns minimum memory required for <ahref='undocumented#Pixel'>pixel</a> storage.
Does not include unused memory on last row when <ahref='#SkPixmap_rowBytesAsPixels'>rowBytesAsPixels</a>() exceeds <ahref='#SkPixmap_width'>width()</a>.
Returns zero if <ahref='#SkPixmap_height'>height()</a> or <ahref='#SkPixmap_width'>width()</a> is 0.
Returns <ahref='#SkPixmap_height'>height()</a> times <ahref='#SkPixmap_rowBytes'>rowBytes</a>() if <ahref='#SkPixmap_colorType'>colorType</a>() is <ahref='SkImageInfo_Reference#kUnknown_SkColorType'>kUnknown_SkColorType</a>.
Returns true if all pixels are opaque. <ahref='SkImageInfo_Reference#SkColorType'>SkColorType</a> determines how pixels
are encoded, and whether <ahref='undocumented#Pixel'>pixel</a> describes <ahref='SkColor_Reference#Alpha'>alpha</a>. Returns true for <ahref='SkImageInfo_Reference#SkColorType'>SkColorType</a>
without <ahref='SkColor_Reference#Alpha'>alpha</a> in each <ahref='undocumented#Pixel'>pixel</a>; for other <ahref='SkImageInfo_Reference#SkColorType'>SkColorType</a>, returns true if all
pixels have <ahref='SkColor_Reference#Alpha'>alpha</a> values equivalent to 1.0 or greater.
For <ahref='SkImageInfo_Reference#SkColorType'>SkColorType</a><ahref='SkImageInfo_Reference#kRGB_565_SkColorType'>kRGB_565_SkColorType</a> or <ahref='SkImageInfo_Reference#kGray_8_SkColorType'>kGray_8_SkColorType</a>: always
returns true. For <ahref='SkImageInfo_Reference#SkColorType'>SkColorType</a><ahref='SkImageInfo_Reference#kAlpha_8_SkColorType'>kAlpha_8_SkColorType</a>, <ahref='SkImageInfo_Reference#kBGRA_8888_SkColorType'>kBGRA_8888_SkColorType</a>,
<ahref='SkImageInfo_Reference#kRGBA_8888_SkColorType'>kRGBA_8888_SkColorType</a>: returns true if all <ahref='undocumented#Pixel'>pixel</a><ahref='SkColor_Reference#Alpha'>alpha</a> values are 255.
For <ahref='SkImageInfo_Reference#SkColorType'>SkColorType</a><ahref='SkImageInfo_Reference#kARGB_4444_SkColorType'>kARGB_4444_SkColorType</a>: returns true if all <ahref='undocumented#Pixel'>pixel</a><ahref='SkColor_Reference#Alpha'>alpha</a> values are 15.
For <ahref='SkImageInfo_Reference#kRGBA_F16_SkColorType'>kRGBA_F16_SkColorType</a>: returns true if all <ahref='undocumented#Pixel'>pixel</a><ahref='SkColor_Reference#Alpha'>alpha</a> values are 1.0 or
Returns <ahref='undocumented#Pixel'>pixel</a> at (<ahref='#SkPixmap_getColor_x'>x</a>, <ahref='#SkPixmap_getColor_y'>y</a>) as <ahref='undocumented#Unpremultiply'>unpremultiplied</a><ahref='SkColor_Reference#Color'>color</a>.
Returns black with <ahref='SkColor_Reference#Alpha'>alpha</a> if <ahref='SkImageInfo_Reference#SkColorType'>SkColorType</a> is <ahref='SkImageInfo_Reference#kAlpha_8_SkColorType'>kAlpha_8_SkColorType</a>.
SK_RELEASE is defined. Fails if <ahref='SkImageInfo_Reference#SkColorType'>SkColorType</a> is <ahref='SkImageInfo_Reference#kUnknown_SkColorType'>kUnknown_SkColorType</a> or
<ahref='undocumented#Pixel'>pixel</a> address is nullptr.
<ahref='undocumented#SkColorSpace'>SkColorSpace</a> in <ahref='SkImageInfo_Reference#SkImageInfo'>SkImageInfo</a> is ignored. Some <ahref='SkColor_Reference#Color'>color</a> precision may be lost in the
conversion to <ahref='undocumented#Unpremultiply'>unpremultiplied</a><ahref='SkColor_Reference#Color'>color</a>; original <ahref='undocumented#Pixel'>pixel</a><ahref='undocumented#Data'>data</a> may have additional
Looks up the <ahref='undocumented#Pixel'>pixel</a> at (<ahref='#SkPixmap_getAlphaf_x'>x</a>,<ahref='#SkPixmap_getAlphaf_y'>y</a>) and return its <ahref='SkColor_Reference#Alpha'>alpha</a> component, normalized to [0..1].
This is roughly equivalent to <code>SkGetColorA(<ahref='#SkPixmap_getColor'>getColor</a>())</code>, but can be more efficient
Returns readable <ahref='undocumented#Pixel'>pixel</a> address at (<ahref='#SkPixmap_addr_2_x'>x</a>, <ahref='#SkPixmap_addr_2_y'>y</a>). Returns nullptr if <ahref='undocumented#SkPixelRef'>SkPixelRef</a> is nullptr.
Input is not validated: out of bounds values of <ahref='#SkPixmap_addr_2_x'>x</a> or <ahref='#SkPixmap_addr_2_y'>y</a> trigger an assert() if
built with SK_DEBUG defined. Returns nullptr if <ahref='SkImageInfo_Reference#SkColorType'>SkColorType</a> is <ahref='SkImageInfo_Reference#kUnknown_SkColorType'>kUnknown_SkColorType</a>.
Performs a lookup of <ahref='undocumented#Pixel'>pixel</a><ahref='undocumented#Size'>size</a>; for better performance, call
one of: <ahref='#SkPixmap_addr8'>addr8</a>, <ahref='#SkPixmap_addr16'>addr16</a>, <ahref='#SkPixmap_addr32'>addr32</a>, <ahref='#SkPixmap_addr64'>addr64</a>, or <ahref='#SkPixmap_addrF16'>addrF16</a>().
Returns readable base <ahref='undocumented#Pixel'>pixel</a> address. Result is addressable as unsigned 8-bit bytes.
Will trigger an assert() if <ahref='SkImageInfo_Reference#SkColorType'>SkColorType</a> is not <ahref='SkImageInfo_Reference#kAlpha_8_SkColorType'>kAlpha_8_SkColorType</a> or
<ahref='SkImageInfo_Reference#kGray_8_SkColorType'>kGray_8_SkColorType</a>, and is built with SK_DEBUG defined.
Returns readable base <ahref='undocumented#Pixel'>pixel</a> address. Result is addressable as unsigned 16-bit words.
Will trigger an assert() if <ahref='SkImageInfo_Reference#SkColorType'>SkColorType</a> is not <ahref='SkImageInfo_Reference#kRGB_565_SkColorType'>kRGB_565_SkColorType</a> or
<ahref='SkImageInfo_Reference#kARGB_4444_SkColorType'>kARGB_4444_SkColorType</a>, and is built with SK_DEBUG defined.
Returns readable base <ahref='undocumented#Pixel'>pixel</a> address. Result is addressable as unsigned 32-bit words.
Will trigger an assert() if <ahref='SkImageInfo_Reference#SkColorType'>SkColorType</a> is not <ahref='SkImageInfo_Reference#kRGBA_8888_SkColorType'>kRGBA_8888_SkColorType</a> or
<ahref='SkImageInfo_Reference#kBGRA_8888_SkColorType'>kBGRA_8888_SkColorType</a>, and is built with SK_DEBUG defined.
Returns readable base <ahref='undocumented#Pixel'>pixel</a> address. Result is addressable as unsigned 64-bit words.
Will trigger an assert() if <ahref='SkImageInfo_Reference#SkColorType'>SkColorType</a> is not <ahref='SkImageInfo_Reference#kRGBA_F16_SkColorType'>kRGBA_F16_SkColorType</a> and is built
Returns readable base <ahref='undocumented#Pixel'>pixel</a> address. Result is addressable as unsigned 16-bit words.
Will trigger an assert() if <ahref='SkImageInfo_Reference#SkColorType'>SkColorType</a> is not <ahref='SkImageInfo_Reference#kRGBA_F16_SkColorType'>kRGBA_F16_SkColorType</a> and is built
Will trigger an assert() if <ahref='SkImageInfo_Reference#SkColorType'>SkColorType</a> is not <ahref='SkImageInfo_Reference#kAlpha_8_SkColorType'>kAlpha_8_SkColorType</a> or
<ahref='SkImageInfo_Reference#kGray_8_SkColorType'>kGray_8_SkColorType</a>, and is built with SK_DEBUG defined.
Will trigger an assert() if <ahref='SkImageInfo_Reference#SkColorType'>SkColorType</a> is not <ahref='SkImageInfo_Reference#kRGB_565_SkColorType'>kRGB_565_SkColorType</a> or
<ahref='SkImageInfo_Reference#kARGB_4444_SkColorType'>kARGB_4444_SkColorType</a>, and is built with SK_DEBUG defined.
readable unsigned 16-bit pointer to <ahref='undocumented#Pixel'>pixel</a> at (<ahref='#SkPixmap_addr16_2_x'>x</a>, <ahref='#SkPixmap_addr16_2_y'>y</a>)
Will trigger an assert() if <ahref='SkImageInfo_Reference#SkColorType'>SkColorType</a> is not <ahref='SkImageInfo_Reference#kRGBA_8888_SkColorType'>kRGBA_8888_SkColorType</a> or
<ahref='SkImageInfo_Reference#kBGRA_8888_SkColorType'>kBGRA_8888_SkColorType</a>, and is built with SK_DEBUG defined.
readable unsigned 32-bit pointer to <ahref='undocumented#Pixel'>pixel</a> at (<ahref='#SkPixmap_addr32_2_x'>x</a>, <ahref='#SkPixmap_addr32_2_y'>y</a>)
Will trigger an assert() if <ahref='SkImageInfo_Reference#SkColorType'>SkColorType</a> is not <ahref='SkImageInfo_Reference#kRGBA_F16_SkColorType'>kRGBA_F16_SkColorType</a> and is built
readable unsigned 64-bit pointer to <ahref='undocumented#Pixel'>pixel</a> at (<ahref='#SkPixmap_addr64_2_x'>x</a>, <ahref='#SkPixmap_addr64_2_y'>y</a>)
Will trigger an assert() if <ahref='SkImageInfo_Reference#SkColorType'>SkColorType</a> is not <ahref='SkImageInfo_Reference#kRGBA_F16_SkColorType'>kRGBA_F16_SkColorType</a> and is built
readable unsigned 16-bit pointer to <ahref='undocumented#Pixel'>pixel</a> component at (<ahref='#SkPixmap_addrF16_2_x'>x</a>, <ahref='#SkPixmap_addrF16_2_y'>y</a>)
Input is not validated: out of bounds values of <ahref='#SkPixmap_writable_addr_2_x'>x</a> or <ahref='#SkPixmap_writable_addr_2_y'>y</a> trigger an assert() if
built with SK_DEBUG defined. Returns zero if <ahref='SkImageInfo_Reference#SkColorType'>SkColorType</a> is <ahref='SkImageInfo_Reference#kUnknown_SkColorType'>kUnknown_SkColorType</a>.
Returns writable <ahref='undocumented#Pixel'>pixel</a> address at (<ahref='#SkPixmap_writable_addr8_x'>x</a>, <ahref='#SkPixmap_writable_addr8_y'>y</a>). Result is addressable as unsigned
8-bit bytes. Will trigger an assert() if <ahref='SkImageInfo_Reference#SkColorType'>SkColorType</a> is not <ahref='SkImageInfo_Reference#kAlpha_8_SkColorType'>kAlpha_8_SkColorType</a>
or <ahref='SkImageInfo_Reference#kGray_8_SkColorType'>kGray_8_SkColorType</a>, and is built with SK_DEBUG defined.
<div><fiddle-embedname="809284db136748208b3efc31cd89de29"><div>Altering pixels after drawing <ahref='SkBitmap_Reference#Bitmap'>Bitmap</a> is not guaranteed to affect subsequent
drawing on all platforms. Adding a second <ahref='SkBitmap_Reference#SkBitmap'>SkBitmap</a>::<ahref='#SkBitmap_installPixels'>installPixels</a> after editing
<ahref='undocumented#Pixel'>pixel</a> memory is safer.
Returns <ahref='#SkPixmap_writable_addr'>writable_addr</a><ahref='undocumented#Pixel'>pixel</a> address at (<ahref='#SkPixmap_writable_addr16_x'>x</a>, <ahref='#SkPixmap_writable_addr16_y'>y</a>). Result is addressable as unsigned
16-bit words. Will trigger an assert() if <ahref='SkImageInfo_Reference#SkColorType'>SkColorType</a> is not <ahref='SkImageInfo_Reference#kRGB_565_SkColorType'>kRGB_565_SkColorType</a>
or <ahref='SkImageInfo_Reference#kARGB_4444_SkColorType'>kARGB_4444_SkColorType</a>, and is built with SK_DEBUG defined.
<div><fiddle-embedname="6da54774f6432b46b47ea9013c15f280"><div>Draw a five by five <ahref='SkBitmap_Reference#Bitmap'>bitmap</a>, and draw it again with a center black <ahref='undocumented#Pixel'>pixel</a>.
The low nibble of the 16-bit word is <ahref='SkColor_Reference#Alpha'>Alpha</a>.
Returns writable <ahref='undocumented#Pixel'>pixel</a> address at (<ahref='#SkPixmap_writable_addr32_x'>x</a>, <ahref='#SkPixmap_writable_addr32_y'>y</a>). Result is addressable as unsigned
32-bit words. Will trigger an assert() if <ahref='SkImageInfo_Reference#SkColorType'>SkColorType</a> is not
<ahref='SkImageInfo_Reference#kRGBA_8888_SkColorType'>kRGBA_8888_SkColorType</a> or <ahref='SkImageInfo_Reference#kBGRA_8888_SkColorType'>kBGRA_8888_SkColorType</a>, and is built with SK_DEBUG
Returns writable <ahref='undocumented#Pixel'>pixel</a> address at (<ahref='#SkPixmap_writable_addr64_x'>x</a>, <ahref='#SkPixmap_writable_addr64_y'>y</a>). Result is addressable as unsigned
64-bit words. Will trigger an assert() if <ahref='SkImageInfo_Reference#SkColorType'>SkColorType</a> is not
<ahref='SkImageInfo_Reference#kRGBA_F16_SkColorType'>kRGBA_F16_SkColorType</a> and is built with SK_DEBUG defined.
Returns writable <ahref='undocumented#Pixel'>pixel</a> address at (<ahref='#SkPixmap_writable_addrF16_x'>x</a>, <ahref='#SkPixmap_writable_addrF16_y'>y</a>). Result is addressable as unsigned
16-bit words. Will trigger an assert() if <ahref='SkImageInfo_Reference#SkColorType'>SkColorType</a> is not
<ahref='SkImageInfo_Reference#kRGBA_F16_SkColorType'>kRGBA_F16_SkColorType</a> and is built with SK_DEBUG defined.
<div><fiddle-embedname="7822d78f5cacf5c04267cbbc6c6d0b80"><div>Left <ahref='SkBitmap_Reference#Bitmap'>bitmap</a> is drawn with two pixels defined in half float format. Right <ahref='SkBitmap_Reference#Bitmap'>bitmap</a>
is drawn after overwriting bottom half float <ahref='SkColor_Reference#Color'>color</a> with top half float <ahref='SkColor_Reference#Color'>color</a>.
Copies a <ahref='SkRect_Reference#SkRect'>SkRect</a> of pixels to <ahref='#SkPixmap_readPixels_dstPixels'>dstPixels</a>. Copy starts at (0, 0), and does not
<ahref='#SkPixmap_readPixels_dstInfo'>dstInfo</a> specifies width, height, <ahref='SkImageInfo_Reference#SkColorType'>SkColorType</a>, <ahref='SkImageInfo_Reference#SkAlphaType'>SkAlphaType</a>, and
<ahref='undocumented#SkColorSpace'>SkColorSpace</a> of destination. <ahref='#SkPixmap_readPixels_dstRowBytes'>dstRowBytes</a> specifics the gap from one destination
<ahref='#SkPixmap_readPixels_dstInfo'>dstInfo</a> address equals nullptr, or <ahref='#SkPixmap_readPixels_dstRowBytes'>dstRowBytes</a> is less than <ahref='#SkPixmap_readPixels_dstInfo'>dstInfo</a>.<ahref='#SkImageInfo_minRowBytes'>minRowBytes</a>().
Pixels are copied only if <ahref='undocumented#Pixel'>pixel</a> conversion is possible. If <ahref='SkPixmap_Reference#SkPixmap'>SkPixmap</a><ahref='#SkPixmap_colorType'>colorType</a>() is
<ahref='SkImageInfo_Reference#kGray_8_SkColorType'>kGray_8_SkColorType</a>, or <ahref='SkImageInfo_Reference#kAlpha_8_SkColorType'>kAlpha_8_SkColorType</a>; <ahref='#SkPixmap_readPixels_dstInfo'>dstInfo</a>.<ahref='#SkImageInfo_colorType'>colorType</a>() must match.
If <ahref='SkPixmap_Reference#SkPixmap'>SkPixmap</a><ahref='#SkPixmap_colorType'>colorType</a>() is <ahref='SkImageInfo_Reference#kGray_8_SkColorType'>kGray_8_SkColorType</a>, <ahref='#SkPixmap_readPixels_dstInfo'>dstInfo</a>.<ahref='#SkImageInfo_colorSpace'>colorSpace</a>() must match.
If <ahref='SkPixmap_Reference#SkPixmap'>SkPixmap</a><ahref='#SkPixmap_alphaType'>alphaType</a>() is <ahref='SkImageInfo_Reference#kOpaque_SkAlphaType'>kOpaque_SkAlphaType</a>, <ahref='#SkPixmap_readPixels_dstInfo'>dstInfo</a>.<ahref='#SkImageInfo_alphaType'>alphaType</a>() must
match. If <ahref='SkPixmap_Reference#SkPixmap'>SkPixmap</a><ahref='#SkPixmap_colorSpace'>colorSpace</a>() is nullptr, <ahref='#SkPixmap_readPixels_dstInfo'>dstInfo</a>.<ahref='#SkImageInfo_colorSpace'>colorSpace</a>() must match. Returns
false if <ahref='undocumented#Pixel'>pixel</a> conversion is not possible.
Returns false if <ahref='SkPixmap_Reference#SkPixmap'>SkPixmap</a><ahref='#SkPixmap_width'>width()</a> or <ahref='#SkPixmap_height'>height()</a> is zero or negative.
Copies a <ahref='SkRect_Reference#Rect'>Rect</a> of pixels to <ahref='#SkPixmap_readPixels_2_dstPixels'>dstPixels</a>. Copy starts at (<ahref='#SkPixmap_readPixels_2_srcX'>srcX</a>, <ahref='#SkPixmap_readPixels_2_srcY'>srcY</a>), and does not
<ahref='#SkPixmap_readPixels_2_dstInfo'>dstInfo</a> specifies width, height, <ahref='#Image_Info_Color_Type'>Color_Type</a>, <ahref='#Image_Info_Alpha_Type'>Alpha_Type</a>, and
<ahref='#Color_Space'>Color_Space</a> of destination. <ahref='#SkPixmap_readPixels_2_dstRowBytes'>dstRowBytes</a> specifics the gap from one destination
row to the next. Returns true if pixels are copied. Returns false if
<ahref='#SkPixmap_readPixels_2_dstInfo'>dstInfo</a> has no address, or <ahref='#SkPixmap_readPixels_2_dstRowBytes'>dstRowBytes</a> is less than <ahref='#SkPixmap_readPixels_2_dstInfo'>dstInfo</a>.<ahref='#SkImageInfo_minRowBytes'>minRowBytes</a>().
Pixels are copied only if <ahref='undocumented#Pixel'>pixel</a> conversion is possible. If <ahref='SkPixmap_Reference#Pixmap'>Pixmap</a><ahref='#SkPixmap_colorType'>colorType</a> is
<ahref='SkImageInfo_Reference#kGray_8_SkColorType'>kGray_8_SkColorType</a>, or <ahref='SkImageInfo_Reference#kAlpha_8_SkColorType'>kAlpha_8_SkColorType</a>; <ahref='#SkPixmap_readPixels_2_dstInfo'>dstInfo</a>.<ahref='#SkImageInfo_colorType'>colorType</a>() must match.
If <ahref='SkPixmap_Reference#Pixmap'>Pixmap</a><ahref='#SkPixmap_colorType'>colorType</a> is <ahref='SkImageInfo_Reference#kGray_8_SkColorType'>kGray_8_SkColorType</a>, <ahref='#SkPixmap_readPixels_2_dstInfo'>dstInfo</a>.<ahref='#SkImageInfo_colorSpace'>colorSpace</a>() must match.
If <ahref='SkPixmap_Reference#Pixmap'>Pixmap</a><ahref='#SkPixmap_alphaType'>alphaType</a> is <ahref='SkImageInfo_Reference#kOpaque_SkAlphaType'>kOpaque_SkAlphaType</a>, <ahref='#SkPixmap_readPixels_2_dstInfo'>dstInfo</a>.<ahref='#SkImageInfo_alphaType'>alphaType</a>() must
match. If <ahref='SkPixmap_Reference#Pixmap'>Pixmap</a><ahref='#SkPixmap_colorSpace'>colorSpace</a> is nullptr, <ahref='#SkPixmap_readPixels_2_dstInfo'>dstInfo</a>.<ahref='#SkImageInfo_colorSpace'>colorSpace</a>() must match. Returns
false if <ahref='undocumented#Pixel'>pixel</a> conversion is not possible.
<ahref='#SkPixmap_readPixels_2_srcX'>srcX</a> and <ahref='#SkPixmap_readPixels_2_srcY'>srcY</a> may be negative to copy only top or left of source. Returns
false if <ahref='SkPixmap_Reference#Pixmap'>Pixmap</a><ahref='#SkPixmap_width'>width()</a> or <ahref='#SkPixmap_height'>height()</a> is zero or negative. Returns false if:
<code><ahref='undocumented#abs()'>abs</a>(<ahref='#SkPixmap_readPixels_2_srcX'>srcX</a>) >= <ahref='SkPixmap_Reference#Pixmap'>Pixmap</a><ahref='#SkPixmap_width'>width()</a></code>, or if <code><ahref='undocumented#abs()'>abs</a>(<ahref='#SkPixmap_readPixels_2_srcY'>srcY</a>) >= <ahref='SkPixmap_Reference#Pixmap'>Pixmap</a><ahref='#SkPixmap_height'>height()</a></code>.
Copies a <ahref='SkRect_Reference#Rect'>Rect</a> of pixels to <ahref='#SkPixmap_readPixels_3_dst'>dst</a>. Copy starts at (<ahref='#SkPixmap_readPixels_3_srcX'>srcX</a>, <ahref='#SkPixmap_readPixels_3_srcY'>srcY</a>), and does not
<ahref='#Image_Info_Alpha_Type'>Alpha_Type</a>, and <ahref='#Color_Space'>Color_Space</a> of destination. Returns true if pixels are copied.
Returns false if <ahref='#SkPixmap_readPixels_3_dst'>dst</a>.<ahref='#SkPixmap_addr'>addr()</a> equals nullptr, or <ahref='#SkPixmap_readPixels_3_dst'>dst</a>.<ahref='#SkPixmap_rowBytes'>rowBytes</a>() is less than
Pixels are copied only if <ahref='undocumented#Pixel'>pixel</a> conversion is possible. If <ahref='SkPixmap_Reference#Pixmap'>Pixmap</a><ahref='#SkPixmap_colorType'>colorType</a> is
<ahref='SkImageInfo_Reference#kGray_8_SkColorType'>kGray_8_SkColorType</a>, or <ahref='SkImageInfo_Reference#kAlpha_8_SkColorType'>kAlpha_8_SkColorType</a>; <ahref='#SkPixmap_readPixels_3_dst'>dst</a>.<ahref='#SkPixmap_info'>info()</a>.<ahref='#SkImageInfo_colorType'>colorType</a>() must match.
If <ahref='SkPixmap_Reference#Pixmap'>Pixmap</a><ahref='#SkPixmap_colorType'>colorType</a> is <ahref='SkImageInfo_Reference#kGray_8_SkColorType'>kGray_8_SkColorType</a>, <ahref='#SkPixmap_readPixels_3_dst'>dst</a>.<ahref='#SkPixmap_info'>info()</a>.<ahref='#SkImageInfo_colorSpace'>colorSpace</a>() must match.
If <ahref='SkPixmap_Reference#Pixmap'>Pixmap</a><ahref='#SkPixmap_alphaType'>alphaType</a> is <ahref='SkImageInfo_Reference#kOpaque_SkAlphaType'>kOpaque_SkAlphaType</a>, <ahref='#SkPixmap_readPixels_3_dst'>dst</a>.<ahref='#SkPixmap_info'>info()</a>.<ahref='#SkImageInfo_alphaType'>alphaType</a>() must
match. If <ahref='SkPixmap_Reference#Pixmap'>Pixmap</a><ahref='#SkPixmap_colorSpace'>colorSpace</a> is nullptr, <ahref='#SkPixmap_readPixels_3_dst'>dst</a>.<ahref='#SkPixmap_info'>info()</a>.<ahref='#SkImageInfo_colorSpace'>colorSpace</a>() must match. Returns
false if <ahref='undocumented#Pixel'>pixel</a> conversion is not possible.
<ahref='#SkPixmap_readPixels_3_srcX'>srcX</a> and <ahref='#SkPixmap_readPixels_3_srcY'>srcY</a> may be negative to copy only top or left of source. Returns
false <ahref='SkPixmap_Reference#Pixmap'>Pixmap</a><ahref='#SkPixmap_width'>width()</a> or <ahref='#SkPixmap_height'>height()</a> is zero or negative. Returns false if:
<code><ahref='undocumented#abs()'>abs</a>(<ahref='#SkPixmap_readPixels_3_srcX'>srcX</a>) >= <ahref='SkPixmap_Reference#Pixmap'>Pixmap</a><ahref='#SkPixmap_width'>width()</a></code>, or if <code><ahref='undocumented#abs()'>abs</a>(<ahref='#SkPixmap_readPixels_3_srcY'>srcY</a>) >= <ahref='SkPixmap_Reference#Pixmap'>Pixmap</a><ahref='#SkPixmap_height'>height()</a></code>.
<ahref='SkImageInfo_Reference#SkAlphaType'>SkAlphaType</a>, and <ahref='undocumented#SkColorSpace'>SkColorSpace</a> of destination. Returns true if pixels are copied.
Returns false if <ahref='#SkPixmap_readPixels_4_dst'>dst</a> address equals nullptr, or <ahref='#SkPixmap_readPixels_4_dst'>dst</a>.<ahref='#SkPixmap_rowBytes'>rowBytes</a>() is less than
Pixels are copied only if <ahref='undocumented#Pixel'>pixel</a> conversion is possible. If <ahref='SkPixmap_Reference#SkPixmap'>SkPixmap</a><ahref='#SkPixmap_colorType'>colorType</a>() is
<ahref='SkImageInfo_Reference#kGray_8_SkColorType'>kGray_8_SkColorType</a>, or <ahref='SkImageInfo_Reference#kAlpha_8_SkColorType'>kAlpha_8_SkColorType</a>; <ahref='#SkPixmap_readPixels_4_dst'>dst</a><ahref='SkImageInfo_Reference#SkColorType'>SkColorType</a> must match.
If <ahref='SkPixmap_Reference#SkPixmap'>SkPixmap</a><ahref='#SkPixmap_colorType'>colorType</a>() is <ahref='SkImageInfo_Reference#kGray_8_SkColorType'>kGray_8_SkColorType</a>, <ahref='#SkPixmap_readPixels_4_dst'>dst</a><ahref='undocumented#SkColorSpace'>SkColorSpace</a> must match.
If <ahref='SkPixmap_Reference#SkPixmap'>SkPixmap</a><ahref='#SkPixmap_alphaType'>alphaType</a>() is <ahref='SkImageInfo_Reference#kOpaque_SkAlphaType'>kOpaque_SkAlphaType</a>, <ahref='#SkPixmap_readPixels_4_dst'>dst</a><ahref='SkImageInfo_Reference#SkAlphaType'>SkAlphaType</a> must
match. If <ahref='SkPixmap_Reference#SkPixmap'>SkPixmap</a><ahref='#SkPixmap_colorSpace'>colorSpace</a>() is nullptr, <ahref='#SkPixmap_readPixels_4_dst'>dst</a><ahref='undocumented#SkColorSpace'>SkColorSpace</a> must match. Returns
false if <ahref='undocumented#Pixel'>pixel</a> conversion is not possible.
Returns false if <ahref='SkPixmap_Reference#SkPixmap'>SkPixmap</a><ahref='#SkPixmap_width'>width()</a> or <ahref='#SkPixmap_height'>height()</a> is zero or negative.
Copies <ahref='SkBitmap_Reference#SkBitmap'>SkBitmap</a> to <ahref='#SkPixmap_scalePixels_dst'>dst</a>, scaling pixels to fit <ahref='#SkPixmap_scalePixels_dst'>dst</a>.<ahref='#SkPixmap_width'>width()</a> and <ahref='#SkPixmap_scalePixels_dst'>dst</a>.<ahref='#SkPixmap_height'>height()</a>, and
converting pixels to match <ahref='#SkPixmap_scalePixels_dst'>dst</a>.<ahref='#SkPixmap_colorType'>colorType</a>() and <ahref='#SkPixmap_scalePixels_dst'>dst</a>.<ahref='#SkPixmap_alphaType'>alphaType</a>(). Returns true if
pixels are copied. Returns false if <ahref='#SkPixmap_scalePixels_dst'>dst</a> address is nullptr, or <ahref='#SkPixmap_scalePixels_dst'>dst</a>.<ahref='#SkPixmap_rowBytes'>rowBytes</a>() is
less than <ahref='#SkPixmap_scalePixels_dst'>dst</a><ahref='SkImageInfo_Reference#SkImageInfo'>SkImageInfo</a>::<ahref='#SkImageInfo_minRowBytes'>minRowBytes</a>.
Pixels are copied only if <ahref='undocumented#Pixel'>pixel</a> conversion is possible. If <ahref='SkPixmap_Reference#SkPixmap'>SkPixmap</a><ahref='#SkPixmap_colorType'>colorType</a>() is
<ahref='SkImageInfo_Reference#kGray_8_SkColorType'>kGray_8_SkColorType</a>, or <ahref='SkImageInfo_Reference#kAlpha_8_SkColorType'>kAlpha_8_SkColorType</a>; <ahref='#SkPixmap_scalePixels_dst'>dst</a><ahref='SkImageInfo_Reference#SkColorType'>SkColorType</a> must match.
If <ahref='SkPixmap_Reference#SkPixmap'>SkPixmap</a><ahref='#SkPixmap_colorType'>colorType</a>() is <ahref='SkImageInfo_Reference#kGray_8_SkColorType'>kGray_8_SkColorType</a>, <ahref='#SkPixmap_scalePixels_dst'>dst</a><ahref='undocumented#SkColorSpace'>SkColorSpace</a> must match.
If <ahref='SkPixmap_Reference#SkPixmap'>SkPixmap</a><ahref='#SkPixmap_alphaType'>alphaType</a>() is <ahref='SkImageInfo_Reference#kOpaque_SkAlphaType'>kOpaque_SkAlphaType</a>, <ahref='#SkPixmap_scalePixels_dst'>dst</a><ahref='SkImageInfo_Reference#SkAlphaType'>SkAlphaType</a> must
match. If <ahref='SkPixmap_Reference#SkPixmap'>SkPixmap</a><ahref='#SkPixmap_colorSpace'>colorSpace</a>() is nullptr, <ahref='#SkPixmap_scalePixels_dst'>dst</a><ahref='undocumented#SkColorSpace'>SkColorSpace</a> must match. Returns
false if <ahref='undocumented#Pixel'>pixel</a> conversion is not possible.
Returns false if <ahref='SkBitmap_Reference#SkBitmap'>SkBitmap</a><ahref='#SkPixmap_width'>width()</a> or <ahref='#SkPixmap_height'>height()</a> is zero or negative.
Scales the <ahref='SkImage_Reference#Image'>image</a>, with <ahref='#SkPixmap_scalePixels_filterQuality'>filterQuality</a>, to match <ahref='#SkPixmap_scalePixels_dst'>dst</a>.<ahref='#SkPixmap_width'>width()</a> and <ahref='#SkPixmap_scalePixels_dst'>dst</a>.<ahref='#SkPixmap_height'>height()</a>.
<ahref='#SkPixmap_scalePixels_filterQuality'>filterQuality</a><ahref='undocumented#kNone_SkFilterQuality'>kNone_SkFilterQuality</a> is fastest, typically implemented with
<ahref='undocumented#Nearest_Neighbor'>nearest neighbor filter</a>. <ahref='undocumented#kLow_SkFilterQuality'>kLow_SkFilterQuality</a> is typically implemented with
<ahref='undocumented#Bilerp'>bilerp filter</a>. <ahref='undocumented#kMedium_SkFilterQuality'>kMedium_SkFilterQuality</a> is typically implemented with
<ahref='undocumented#Bilerp'>bilerp filter</a>, and <ahref='undocumented#MipMap'>mip-map filter</a> when <ahref='undocumented#Size'>size</a> is reduced.
<ahref='undocumented#kHigh_SkFilterQuality'>kHigh_SkFilterQuality</a> is slowest, typically implemented with <ahref='undocumented#BiCubic'>bicubic filter</a>.
Writes <ahref='#SkPixmap_erase_color'>color</a> to pixels bounded by <ahref='#SkPixmap_erase_subset'>subset</a>; returns true on success.
Returns false if <ahref='#SkPixmap_colorType'>colorType</a>() is <ahref='SkImageInfo_Reference#kUnknown_SkColorType'>kUnknown_SkColorType</a>, or if <ahref='#SkPixmap_erase_subset'>subset</a> does
Writes <ahref='#SkPixmap_erase_2_color'>color</a> to pixels inside <ahref='#SkPixmap_bounds'>bounds()</a>; returns true on success.
Returns false if <ahref='#SkPixmap_colorType'>colorType</a>() is <ahref='SkImageInfo_Reference#kUnknown_SkColorType'>kUnknown_SkColorType</a>, or if <ahref='#SkPixmap_bounds'>bounds()</a>
Writes <ahref='#SkPixmap_erase_3_color'>color</a> to pixels bounded by <ahref='#SkPixmap_erase_3_subset'>subset</a>; returns true on success.
if <ahref='#SkPixmap_erase_3_subset'>subset</a> is nullptr, writes colors pixels inside <ahref='#SkPixmap_bounds'>bounds()</a>. Returns false if
<ahref='#SkPixmap_colorType'>colorType</a>() is <ahref='SkImageInfo_Reference#kUnknown_SkColorType'>kUnknown_SkColorType</a>, if <ahref='#SkPixmap_erase_3_subset'>subset</a> is not nullptr and does
not intersect <ahref='#SkPixmap_bounds'>bounds()</a>, or if <ahref='#SkPixmap_erase_3_subset'>subset</a> is nullptr and <ahref='#SkPixmap_bounds'>bounds()</a> is empty.