cairo

Struct MappedImageSurface

Source
pub struct MappedImageSurface { /* private fields */ }

Methods from Deref<Target = ImageSurface>§

Source

pub fn with_data<F: FnOnce(&[u8])>(&self, f: F) -> Result<(), BorrowError>

Source

pub fn format(&self) -> Format

Source

pub fn height(&self) -> i32

Source

pub fn stride(&self) -> i32

Source

pub fn width(&self) -> i32

Methods from Deref<Target = Surface>§

Source

pub fn to_raw_none(&self) -> *mut cairo_surface_t

Source

pub fn create_similar( &self, content: Content, width: i32, height: i32, ) -> Result<Surface, Error>

Source

pub fn create_for_rectangle(&self, bounds: Rectangle) -> Result<Surface, Error>

Source

pub fn mime_data(&self, mime_type: &str) -> Option<Vec<u8>>

Source

pub unsafe fn mime_data_raw(&self, mime_type: &str) -> Option<&[u8]>

Source

pub fn set_mime_data<T: AsRef<[u8]> + 'static>( &self, mime_type: &str, slice: T, ) -> Result<(), Error>

Source

pub fn supports_mime_type(&self, mime_type: &str) -> bool

Source

pub fn device(&self) -> Option<Device>

Source

pub fn content(&self) -> Content

Source

pub fn set_device_offset(&self, x_offset: f64, y_offset: f64)

Source

pub fn device_offset(&self) -> (f64, f64)

Source

pub fn set_device_scale(&self, x_scale: f64, y_scale: f64)

Source

pub fn device_scale(&self) -> (f64, f64)

Source

pub fn set_fallback_resolution( &self, x_pixels_per_inch: f64, y_pixels_per_inch: f64, )

Source

pub fn fallback_resolution(&self) -> (f64, f64)

Source

pub fn create_similar_image( &self, format: Format, width: i32, height: i32, ) -> Result<ImageSurface, Error>

Source

pub fn map_to_image( &self, extents: Option<RectangleInt>, ) -> Result<MappedImageSurface, Error>

Source

pub fn mark_dirty(&self)

Source

pub fn mark_dirty_rectangle(&self, x: i32, y: i32, width: i32, height: i32)

Source

pub fn status(&self) -> Result<(), Error>

Source

pub fn set_user_data<T: 'static>( &self, key: &'static UserDataKey<T>, value: Rc<T>, ) -> Result<(), Error>

Attach user data to self for the given key.

Source

pub fn user_data<T: 'static>( &self, key: &'static UserDataKey<T>, ) -> Option<Rc<T>>

Return the user data previously attached to self with the given key, if any.

Source

pub fn user_data_ptr<T: 'static>( &self, key: &'static UserDataKey<T>, ) -> Option<NonNull<T>>

Return the user data previously attached to self with the given key, if any, without incrementing the reference count.

The pointer is valid when it is returned from this method, until the cairo object that self represents is destroyed or remove_user_data or set_user_data is called with the same key.

Source

pub fn remove_user_data<T: 'static>( &self, key: &'static UserDataKey<T>, ) -> Result<(), Error>

Unattached from self the user data associated with key, if any. If there is no other Rc strong reference, the data is destroyed.

Source

pub fn flush(&self)

Source

pub fn finish(&self)

Source

pub fn type_(&self) -> SurfaceType

Source

pub fn write_to_png<W: Write>(&self, stream: &mut W) -> Result<(), IoError>

This function writes the surface as a PNG image to the given stream.

If the underlying surface does not support being written as a PNG, this will return Error::SurfaceTypeMismatch

Source

pub fn finish_output_stream(&self) -> Result<Box<dyn Any>, StreamWithError>

Finish the surface, then remove and return the output stream if any.

This calls Surface::finish, to make sure pending writes are done.

This is relevant for surfaces created for example with crate::PdfSurface::for_stream.

Use Box::downcast to recover the concrete stream type.

§Panics

This method panics if:

  • This method was already called for this surface, or
  • This surface was not created with an output stream in the first place, or
  • A previous write to this surface panicked, or
  • A previous write happened while another write was ongoing, or
  • A write is ongoing now.

The latter two cases can only occur with a pathological output stream type that accesses the same surface again from Write::write_all.

Trait Implementations§

Source§

impl AsRef<ImageSurface> for MappedImageSurface

Source§

fn as_ref(&self) -> &ImageSurface

Converts this type into a shared reference of the (usually inferred) input type.
Source§

impl Debug for MappedImageSurface

Source§

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

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

impl Deref for MappedImageSurface

Source§

type Target = ImageSurface

The resulting type after dereferencing.
Source§

fn deref(&self) -> &ImageSurface

Dereferences the value.
Source§

impl Drop for MappedImageSurface

Source§

fn drop(&mut self)

Executes the destructor for this type. Read more

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<P, T> Receiver for P
where P: Deref<Target = T> + ?Sized, T: ?Sized,

Source§

type Target = T

🔬This is a nightly-only experimental API. (arbitrary_self_types)
The target type on which the method may be called.
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.