OwnedBitmap

Struct OwnedBitmap 

Source
pub struct OwnedBitmap { /* private fields */ }
Expand description

A bitmap object that has an owned pixel buffer.

This is useful for using the raw pixels in any rust code without binding to the underlying C library.

To create an Ultralight bitmap, use OwnedBitmap::to_bitmap.

Implementations§

Source§

impl OwnedBitmap

Source

pub fn from_bitmap(bitmap: &mut Bitmap) -> Option<Self>

Create an OwnedBitmap from a Bitmap.

This will result in copying all the pixels from the original bitmap.

Source

pub fn to_bitmap(&self, lib: Arc<Library>) -> Result<Bitmap, BitmapError>

Create a Bitmap from an OwnedBitmap.

This is useful when we need to call Ultralight logic that require Bitmap.

This function will copy all the pixels from the owned bitmap.

Source

pub fn width(&self) -> u32

Get the width in pixels.

Source

pub fn height(&self) -> u32

Get the height in pixels.

Source

pub fn format(&self) -> BitmapFormat

Get the pixel format.

Source

pub fn bpp(&self) -> u32

Get the number of bytes per pixel.

Source

pub fn row_bytes(&self) -> u32

Get the number of bytes between each row of pixels.

Source

pub fn bytes_size(&self) -> usize

Get the size in bytes of the pixel buffer.

Source

pub fn pixels(&self) -> Option<&[u8]>

Get the pixel buffer slice.

Source

pub fn pixels_mut(&mut self) -> Option<&mut [u8]>

Get the mutable pixel buffer slice.

Source

pub fn is_empty(&self) -> bool

Whether or not this bitmap is empty (no pixels allocated).

Auto Trait Implementations§

Blanket Implementations§

Source§

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

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

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

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

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

Source§

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

Mutably borrows from an owned value. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

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

Source§

fn into(self) -> U

Calls U::from(self).

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

Source§

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

Source§

type Error = Infallible

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

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

Performs the conversion.
Source§

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

Source§

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

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

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

Performs the conversion.