SkImageInfo Reference
===
# Image Info
## Overview
## Subtopics
| name | description |
| --- | --- |
| Constructors | functions that construct SkImageInfo |
| Member Functions | static functions and member methods |
| Operators | operator overloading methods |
## Constants
| name | description |
| --- | --- |
## Alpha Type
## Enum SkAlphaType
enum SkAlphaType {
kUnknown SkAlphaType,
kOpaque SkAlphaType,
kPremul SkAlphaType,
kUnpremul SkAlphaType,
kLastEnum_SkAlphaType = kUnpremul SkAlphaType,
};
Describes how to interpret the alpha component of a pixel.
### Constants
### Example
### See Also
incomplete
## Color Type
## Enum SkColorType
enum SkColorType {
kUnknown SkColorType,
kAlpha 8 SkColorType,
kRGB 565 SkColorType,
kARGB 4444 SkColorType,
kRGBA 8888 SkColorType,
kBGRA 8888 SkColorType,
kGray 8 SkColorType,
kRGBA F16 SkColorType,
kLastEnum_SkColorType = kRGBA F16 SkColorType,
kN32 SkColorType = kBGRA 8888 SkColorType,
kN32 SkColorType = kRGBA 8888 SkColorType,
};
Describes how to interpret the components of a pixel.
kN32 SkColorType is an alias for whichever 32 bit Color ARGB format is the ""
form for skia's blitters. Use this if you don't have a swizzle preference
for 32 bit pixels.
### Constants
### Constants
### Example
### See Also
incomplete
## Enum SkYUVColorSpace
enum SkYUVColorSpace {
kJPEG SkYUVColorSpace,
kRec601 SkYUVColorSpace,
kRec709 SkYUVColorSpace,
kLastEnum_SkYUVColorSpace = kRec709 SkYUVColorSpace,
};
Describes the color space a YUV pixel.
### Constants
kJPEG_SkYUVColorSpace | 0 | Standard JPEG color space. |
kRec601_SkYUVColorSpace | 1 | SDTV standard Rec. 601 color space. Uses "studio swing" [16, 235] color
range. See http://en.wikipedia.org/wiki/Rec._601 for details. |
kRec709_SkYUVColorSpace | 2 | HDTV standard Rec. 709 color space. Uses "studio swing" [16, 235] color
range. See http://en.wikipedia.org/wiki/Rec._709 for details. |
### Example
### See Also
incomplete
## Enum SkDestinationSurfaceColorMode
enum class SkDestinationSurfaceColorMode {
kLegacy,
kGammaAndColorSpaceAware,
};
### Constants
### Example
### See Also
incomplete
# Struct SkImageInfo
Describe an image's dimensions and pixel type.
Used for both src images and render-targets (surfaces).
## Operators
| name | description |
| --- | --- |
| operator!=(const SkImageInfo& other) const | incomplete |
| operator==(const SkImageInfo& other) const | incomplete |
## Member Functions
| name | description |
| --- | --- |
| ByteSizeOverflowed | incomplete |
| Make | creates Image Info from dimensions, Color Type, Alpha Type, Color Space |
| MakeA8 | creates Image Info with kAlpha 8 SkColorType, kPremul SkAlphaType |
| MakeN32 | creates Image Info with Native Color Type |
| MakeN32Premul | creates Image Info with Native Color Type, kPremul SkAlphaType |
| MakeS32 | creates Image Info with Native Color Type, sRGB Color Space |
| MakeUnknown | creates Image Info with kUnknown SkColorType, kUnknown SkAlphaType |
| alphaType | incomplete |
| bounds | incomplete |
| bytesPerPixel | incomplete |
| colorSpace | incomplete |
| colorType | incomplete |
| computeByteSize | incomplete |
| computeMinByteSize | incomplete |
| computeOffset | incomplete |
| dimensions | incomplete |
| flatten | incomplete |
| gammaCloseToSRGB | incomplete |
| height | incomplete |
| isEmpty | incomplete |
| isOpaque | incomplete |
| makeAlphaType | creates Image Info with changed Alpha Type |
| makeColorSpace | creates Image Info with changed Color Space |
| makeColorType | creates Image Info with changed Color Type |
| makeWH | creates Image Info with changed dimensions |
| minRowBytes | incomplete |
| minRowBytes64 | incomplete |
| refColorSpace | incomplete |
| reset | incomplete |
| shiftPerPixel | incomplete |
| unflatten | incomplete |
| validRowBytes | incomplete |
| validate | incomplete |
| width | incomplete |
## Constructors
| name | description |
| --- | --- |
| Make | creates Image Info from dimensions, Color Type, Alpha Type, Color Space |
| MakeA8 | creates Image Info with kAlpha 8 SkColorType, kPremul SkAlphaType |
| MakeN32 | creates Image Info with Native Color Type |
| MakeN32Premul | creates Image Info with Native Color Type, kPremul SkAlphaType |
| MakeS32 | creates Image Info with Native Color Type, sRGB Color Space |
| MakeUnknown | creates Image Info with kUnknown SkColorType, kUnknown SkAlphaType |
| SkImageInfo() | creates with zero dimensions, kUnknown SkColorType, kUnknown SkAlphaType |
| makeAlphaType | creates Image Info with changed Alpha Type |
| makeColorSpace | creates Image Info with changed Color Space |
| makeColorType | creates Image Info with changed Color Type |
| makeWH | creates Image Info with changed dimensions |
## SkImageInfo
SkImageInfo()
### Return Value
incomplete
### Example
### See Also
incomplete
---
## Make
static SkImageInfo Make(int width, int height, SkColorType ct, SkAlphaType at,
sk_sp<SkColorSpace> cs = nullptr)
### Parameters
### Return Value
incomplete
### Example
### See Also
incomplete
---
## MakeN32
static SkImageInfo MakeN32(int width, int height, SkAlphaType at, sk_sp<SkColorSpace> cs = nullptr)
Sets colortype to kN32 SkColorType.
### Parameters
### Return Value
incomplete
### Example
### See Also
incomplete
---
## MakeS32
static SkImageInfo MakeS32(int width, int height, SkAlphaType at)
Creates Image Info marked as sRGB with kN32 SkColorType swizzle.
### Parameters
### Return Value
incomplete
### Example
### See Also
incomplete
---
## MakeN32Premul
static SkImageInfo MakeN32Premul(int width, int height, sk_sp<SkColorSpace> cs = nullptr)
Sets colortype to kN32 SkColorType, and the alphatype to premul.
### Parameters
### Return Value
incomplete
### Example
### See Also
incomplete
---
static SkImageInfo MakeN32Premul(const SkISize& size)
### Parameters
### Return Value
incomplete
### Example
### See Also
incomplete
---
## MakeA8
static SkImageInfo MakeA8(int width, int height)
### Parameters
### Return Value
incomplete
### Example
### See Also
incomplete
---
## MakeUnknown
static SkImageInfo MakeUnknown(int width, int height)
### Parameters
### Return Value
incomplete
### Example
### See Also
incomplete
---
static SkImageInfo MakeUnknown()
### Return Value
incomplete
### Example
### See Also
incomplete
---
## width
int width() const
### Return Value
incomplete
### Example
### See Also
incomplete
---
## height
int height() const
### Return Value
incomplete
### Example
### See Also
incomplete
---
## colorType
SkColorType colorType() const
### Return Value
incomplete
### Example
### See Also
incomplete
---
## alphaType
SkAlphaType alphaType() const
### Return Value
incomplete
### Example
### See Also
incomplete
---
## colorSpace
SkColorSpace* colorSpace() const
### Return Value
incomplete
### Example
### See Also
incomplete
---
## refColorSpace
sk_sp<SkColorSpace> refColorSpace() const
### Return Value
incomplete
### Example
### See Also
incomplete
---
## isEmpty
bool isEmpty() const
### Return Value
incomplete
### Example
### See Also
incomplete
---
## isOpaque
bool isOpaque() const
### Return Value
incomplete
### Example
### See Also
incomplete
---
## dimensions
SkISize dimensions() const
### Return Value
incomplete
### Example
### See Also
incomplete
---
## bounds
SkIRect bounds() const
### Return Value
incomplete
### Example
### See Also
incomplete
---
## gammaCloseToSRGB
bool gammaCloseToSRGB() const
### Return Value
incomplete
### Example
### See Also
incomplete
---
## makeWH
SkImageInfo makeWH(int newWidth, int newHeight) const
Creates Image Info with the same colortype and alphatype as this info,
but with the specified width and height.
### Parameters
### Return Value
incomplete
### Example
### See Also
incomplete
---
## makeAlphaType
SkImageInfo makeAlphaType(SkAlphaType newAlphaType) const
### Parameters
### Return Value
incomplete
### Example
### See Also
incomplete
---
## makeColorType
SkImageInfo makeColorType(SkColorType newColorType) const
### Parameters
### Return Value
incomplete
### Example
### See Also
incomplete
---
## makeColorSpace
SkImageInfo makeColorSpace(sk_sp<SkColorSpace> cs) const
### Parameters
### Return Value
incomplete
### Example
### See Also
incomplete
---
## bytesPerPixel
int bytesPerPixel() const
### Return Value
incomplete
### Example
### See Also
incomplete
---
## shiftPerPixel
int shiftPerPixel() const
### Return Value
incomplete
### Example
### See Also
incomplete
---
## minRowBytes64
uint64_t minRowBytes64() const
### Return Value
incomplete
### Example
### See Also
incomplete
---
## minRowBytes
size_t minRowBytes() const
### Return Value
incomplete
### Example
### See Also
incomplete
---
## computeOffset
size_t computeOffset(int x, int y, size_t rowBytes) const
### Parameters
### Return Value
incomplete
### Example
### See Also
incomplete
---
## operator==
bool operator==(const SkImageInfo& other) _const
### Parameters
### Return Value
incomplete
### Example
### See Also
incomplete
---
## operator!=
bool operator!=(const SkImageInfo& other) _const
### Parameters
### Return Value
incomplete
### Example
### See Also
incomplete
---
## unflatten
void unflatten(SkReadBuffer& buffer)
### Parameters
### Example
### See Also
incomplete
---
## flatten
void flatten(SkWriteBuffer& buffer) const
### Parameters
### Example
### See Also
incomplete
---
## computeByteSize
size_t computeByteSize(size_t rowBytes) const
Returns the size (in bytes) of the image buffer that this info needs, given the specified
rowBytes. The rowBytes must be >= this->minRowBytes.
if (height == 0) {
return 0;
} else {
return (height - 1) * rowBytes + width * bytes_per_pixel.
If the calculation overflows this returns SK MaxSizeT.
### Parameters
### Return Value
incomplete
### Example
### See Also
incomplete
---
## computeMinByteSize
size_t computeMinByteSize() const
Returns the minimum size (in bytes) of the image buffer that this info needs.
If the calculation overflows, or if the height is 0, this returns 0.
### Return Value
incomplete
### Example
### See Also
incomplete
---
## ByteSizeOverflowed
static bool ByteSizeOverflowed(size_t byteSize)
Returns true if the result of computeByteSize (or computeMinByteSize) overflowed
### Parameters
### Return Value
incomplete
### Example
### See Also
incomplete
---
## validRowBytes
bool validRowBytes(size_t rowBytes) const
### Parameters
### Return Value
incomplete
### Example
### See Also
incomplete
---
## reset
void reset()
### Example
### See Also
incomplete
---
## validate
void validate() const
### Example
### See Also
incomplete
---