Struct lodepng::ffi::ColorMode[][src]

#[repr(C)]pub struct ColorMode {
    pub colortype: ColorType,
    // some fields omitted
}

Color mode of an image. Contains all information required to decode the pixel bits to RGBA colors. This information is the same as used in the PNG file format, and is used both for PNG and raw image data in LodePNG.

Fields

colortype: ColorType

color type, see PNG standard

Implementations

impl ColorMode[src]

pub fn new() -> Self[src]

pub fn colortype(&self) -> ColorType[src]

pub fn bitdepth(&self) -> u32[src]

pub fn set_bitdepth(&mut self, d: u32)[src]

pub fn palette_clear(&mut self)[src]

pub fn palette_add(&mut self, p: RGBA) -> Result<(), Error>[src]

add 1 color to the palette

pub fn palette(&self) -> &[RGBA][src]

pub fn palette_mut(&mut self) -> &mut [RGBA][src]

pub fn bpp(&self) -> u32[src]

get the total amount of bits per pixel, based on colortype and bitdepth in the struct

pub fn set_key(&mut self, r: u16, g: u16, b: u16)[src]

tRNS chunk

pub fn channels(&self) -> u8[src]

get the amount of color channels used, based on colortype in the struct. If a palette is used, it counts as 1 channel.

pub fn is_greyscale_type(&self) -> bool[src]

is it a greyscale type? (only colortype 0 or 4)

pub fn is_alpha_type(&self) -> bool[src]

has it got an alpha channel? (only colortype 2 or 6)

pub fn is_palette_type(&self) -> bool[src]

has it got a palette? (only colortype 3)

pub fn has_palette_alpha(&self) -> bool[src]

only returns true if there is a palette and there is a value in the palette with alpha < 255. Loops through the palette to check this.

pub fn can_have_alpha(&self) -> bool[src]

Check if the given color info indicates the possibility of having non-opaque pixels in the PNG image. Returns true if the image can have translucent or invisible pixels (it still be opaque if it doesn't use such pixels). Returns false if the image can only have opaque pixels. In detail, it returns true only if it's a color type with alpha, or has a palette with non-opaque values, or if "key_defined" is true.

pub fn raw_size(&self, w: u32, h: u32) -> usize[src]

Returns the byte size of a raw image buffer with given width, height and color mode

Trait Implementations

impl Clone for ColorMode[src]

impl Debug for ColorMode[src]

impl Default for ColorMode[src]

Auto Trait Implementations

Blanket Implementations

impl<T> Any for T where
    T: 'static + ?Sized
[src]

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

impl<T> From<T> for T[src]

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

impl<T> ToOwned for T where
    T: Clone
[src]

type Owned = T

The resulting type after obtaining ownership.

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

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

The type returned in the event of a conversion error.