2D Graphics Library
SkAlphaType.h File Reference
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.


enum  SkAlphaType : int {
  kUnknown_SkAlphaType , kOpaque_SkAlphaType , kPremul_SkAlphaType , kUnpremul_SkAlphaType ,
  kLastEnum_SkAlphaType = kUnpremul_SkAlphaType
 Describes how to interpret the alpha component of a pixel. More...


static bool SkAlphaTypeIsOpaque (SkAlphaType at)
 Returns true if SkAlphaType equals kOpaque_SkAlphaType. More...

Enumeration Type Documentation

◆ SkAlphaType

enum SkAlphaType : int

Describes how to interpret the alpha component of a pixel.

A pixel may be opaque, or alpha, describing multiple levels of transparency.

In simple blending, alpha weights the draw color and the destination color to create a new color. If alpha describes a weight from zero to one:

new color = draw color * alpha + destination color * (1 - alpha)

In practice alpha is encoded in two or more bits, where 1.0 equals all bits set.

RGB may have alpha included in each component value; the stored value is the original RGB multiplied by alpha. Premultiplied color components improve performance.




pixel is opaque


pixel components are premultiplied by alpha


pixel components are independent of alpha


last valid value

Function Documentation

◆ SkAlphaTypeIsOpaque()

static bool SkAlphaTypeIsOpaque ( SkAlphaType  at)

Returns true if SkAlphaType equals kOpaque_SkAlphaType.

kOpaque_SkAlphaType is a hint that the SkColorType is opaque, or that all alpha values are set to their 1.0 equivalent. If SkAlphaType is kOpaque_SkAlphaType, and SkColorType is not opaque, then the result of drawing any pixel with a alpha value less than 1.0 is undefined.