ArkUI_BlendMode

Struct ArkUI_BlendMode 

Source
#[repr(transparent)]
pub struct ArkUI_BlendMode(pub c_uint);
Available on crate feature api-12 only.
Expand description

Enumerates the blend modes.

Available since API-level: 12

Tuple Fields§

§0: c_uint

Implementations§

Source§

impl ArkUI_BlendMode

Source

pub const ARKUI_BLEND_MODE_NONE: ArkUI_BlendMode

The top image is superimposed on the bottom image without any blending.

Source

pub const ARKUI_BLEND_MODE_CLEAR: ArkUI_BlendMode

The target pixels covered by the source pixels are erased by being turned to completely transparent.

Source

pub const ARKUI_BLEND_MODE_SRC: ArkUI_BlendMode

r = s: Only the source pixels are displayed.

Source

pub const ARKUI_BLEND_MODE_DST: ArkUI_BlendMode

r = d: Only the target pixels are displayed.

Source

pub const ARKUI_BLEND_MODE_SRC_OVER: ArkUI_BlendMode

r = s + (1 - sa) * d: The source pixels are blended based on opacity and cover the target pixels.

Source

pub const ARKUI_BLEND_MODE_DST_OVER: ArkUI_BlendMode

r = d + (1 - da) * s: The target pixels are blended based on opacity and cover on the source pixels.

Source

pub const ARKUI_BLEND_MODE_SRC_IN: ArkUI_BlendMode

r = s * da: Only the part of the source pixels that overlap with the target pixels is displayed.

Source

pub const ARKUI_BLEND_MODE_DST_IN: ArkUI_BlendMode

r = d * sa: Only the part of the target pixels that overlap with the source pixels is displayed.

Source

pub const ARKUI_BLEND_MODE_SRC_OUT: ArkUI_BlendMode

r = s * (1 - da): Only the part of the source pixels that do not overlap with the target pixels is displayed.

Source

pub const ARKUI_BLEND_MODE_DST_OUT: ArkUI_BlendMode

r = d * (1 - sa): Only the part of the target pixels that do not overlap with the source pixels is displayed.

Source

pub const ARKUI_BLEND_MODE_SRC_ATOP: ArkUI_BlendMode

r = s * da + d * (1 - sa): The part of the source pixels that overlap with the target pixels is displayed and the part of the target pixels that do not overlap with the source pixels are displayed.

Source

pub const ARKUI_BLEND_MODE_DST_ATOP: ArkUI_BlendMode

r = d * sa + s * (1 - da): The part of the target pixels that overlap with the source pixels and the part of the source pixels that do not overlap with the target pixels are displayed.

Source

pub const ARKUI_BLEND_MODE_XOR: ArkUI_BlendMode

r = s * (1 - da) + d * (1 - sa): Only the non-overlapping part between the source pixels and the target pixels is displayed.

Source

pub const ARKUI_BLEND_MODE_PLUS: ArkUI_BlendMode

r = min(s + d, 1): New pixels resulting from adding the source pixels to the target pixels are displayed.

Source

pub const ARKUI_BLEND_MODE_MODULATE: ArkUI_BlendMode

r = s * d: New pixels resulting from multiplying the source pixels with the target pixels are displayed.

Source

pub const ARKUI_BLEND_MODE_SCREEN: ArkUI_BlendMode

r = s + d - s * d: Pixels are blended by adding the source pixels to the target pixels and subtracting the product of their multiplication.

Source

pub const ARKUI_BLEND_MODE_OVERLAY: ArkUI_BlendMode

The MULTIPLY or SCREEN mode is used based on the target pixels.

Source

pub const ARKUI_BLEND_MODE_DARKEN: ArkUI_BlendMode

rc = s + d - max(s * da, d * sa), ra = kSrcOver: When two colors overlap, whichever is darker is used.

Source

pub const ARKUI_BLEND_MODE_LIGHTEN: ArkUI_BlendMode

rc = s + d - min(s * da, d * sa), ra = kSrcOver: The final pixels are composed of the lightest values of pixels.

Source

pub const ARKUI_BLEND_MODE_COLOR_DODGE: ArkUI_BlendMode

The colors of the target pixels are lightened to reflect the source pixels.

Source

pub const ARKUI_BLEND_MODE_COLOR_BURN: ArkUI_BlendMode

The colors of the target pixels are darkened to reflect the source pixels.

Source

pub const ARKUI_BLEND_MODE_HARD_LIGHT: ArkUI_BlendMode

The MULTIPLY or SCREEN mode is used, depending on the source pixels.

Source

pub const ARKUI_BLEND_MODE_SOFT_LIGHT: ArkUI_BlendMode

The LIGHTEN or DARKEN mode is used, depending on the source pixels.

Source

pub const ARKUI_BLEND_MODE_DIFFERENCE: ArkUI_BlendMode

rc = s + d - 2 * (min(s * da, d * sa)), ra = kSrcOver: The final pixel is the result of subtracting the darker of the two pixels (source and target) from the lighter one.

Source

pub const ARKUI_BLEND_MODE_EXCLUSION: ArkUI_BlendMode

rc = s + d - two(s * d), ra = kSrcOver: The final pixel is similar to DIFFERENCE, but with less contrast.

Source

pub const ARKUI_BLEND_MODE_MULTIPLY: ArkUI_BlendMode

r = s * (1 - da) + d * (1 - sa) + s * d: The final pixel is the result of multiplying the source pixel by the target pixel.

Source

pub const ARKUI_BLEND_MODE_HUE: ArkUI_BlendMode

The resultant image is created with the luminance and saturation of the source image and the hue of the target image.

Source

pub const ARKUI_BLEND_MODE_SATURATION: ArkUI_BlendMode

The resultant image is created with the luminance and hue of the target image and the saturation of the source image.

Source

pub const ARKUI_BLEND_MODE_COLOR: ArkUI_BlendMode

The resultant image is created with the saturation and hue of the source image and the luminance of the target image.

Source

pub const ARKUI_BLEND_MODE_LUMINOSITY: ArkUI_BlendMode

The resultant image is created with the saturation and hue of the target image and the luminance of the source image.

Trait Implementations§

Source§

impl Clone for ArkUI_BlendMode

Source§

fn clone(&self) -> ArkUI_BlendMode

Returns a duplicate of the value. Read more
1.0.0§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
Source§

impl Debug for ArkUI_BlendMode

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
Source§

impl Hash for ArkUI_BlendMode

Source§

fn hash<__H: Hasher>(&self, state: &mut __H)

Feeds this value into the given Hasher. Read more
1.3.0§

fn hash_slice<H>(data: &[Self], state: &mut H)
where H: Hasher, Self: Sized,

Feeds a slice of this type into the given Hasher. Read more
Source§

impl PartialEq for ArkUI_BlendMode

Source§

fn eq(&self, other: &ArkUI_BlendMode) -> bool

Tests for self and other values to be equal, and is used by ==.
1.0.0§

fn ne(&self, other: &Rhs) -> bool

Tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
Source§

impl Copy for ArkUI_BlendMode

Source§

impl Eq for ArkUI_BlendMode

Source§

impl StructuralPartialEq for ArkUI_BlendMode

Auto Trait Implementations§

Blanket Implementations§

§

impl<T> Any for T
where T: 'static + ?Sized,

§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
§

impl<T> Borrow<T> for T
where T: ?Sized,

§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
§

impl<T> BorrowMut<T> for T
where T: ?Sized,

§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
§

impl<T> CloneToUninit for T
where T: Clone,

§

unsafe fn clone_to_uninit(&self, dest: *mut u8)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dest. Read more
§

impl<T> From<T> for T

§

fn from(t: T) -> T

Returns the argument unchanged.

§

impl<T, U> Into<U> for T
where U: From<T>,

§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

§

impl<T> ToOwned for T
where T: Clone,

§

type Owned = T

The resulting type after obtaining ownership.
§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

§

type Error = Infallible

The type returned in the event of a conversion error.
§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.