Struct cairo::ImageSurface
source · pub struct ImageSurface(/* private fields */);
Implementations§
source§impl ImageSurface
impl ImageSurface
pub unsafe fn from_raw_full( ptr: *mut cairo_surface_t ) -> Result<ImageSurface, Error>
pub unsafe fn from_raw_none( ptr: *mut cairo_surface_t ) -> Result<ImageSurface, Error>
source§impl ImageSurface
impl ImageSurface
pub fn create( format: Format, width: i32, height: i32 ) -> Result<ImageSurface, Error>
sourcepub unsafe fn create_for_data_unsafe(
data: *mut u8,
format: Format,
width: i32,
height: i32,
stride: i32
) -> Result<ImageSurface, Error>
pub unsafe fn create_for_data_unsafe( data: *mut u8, format: Format, width: i32, height: i32, stride: i32 ) -> Result<ImageSurface, Error>
Creates an image surface for the provided pixel data.
- The pointer
data
is the beginning of the underlying slice, and at leastwidth * stride
succeeding bytes should be allocated. data
must live longer than any reference to the returned surface.- You have to free
data
by yourself.
pub fn create_for_data<D: AsMut<[u8]> + 'static>( data: D, format: Format, width: i32, height: i32, stride: i32 ) -> Result<ImageSurface, Error>
pub fn data(&mut self) -> Result<ImageSurfaceData<'_>, BorrowError>
pub fn take_data(self) -> Result<ImageSurfaceDataOwned, BorrowError>
pub fn with_data<F: FnOnce(&[u8])>(&self, f: F) -> Result<(), BorrowError>
pub fn format(&self) -> Format
pub fn height(&self) -> i32
pub fn stride(&self) -> i32
pub fn width(&self) -> i32
Methods from Deref<Target = Surface>§
pub fn to_raw_none(&self) -> *mut cairo_surface_t
pub fn create_similar( &self, content: Content, width: i32, height: i32 ) -> Result<Surface, Error>
pub fn create_for_rectangle(&self, bounds: Rectangle) -> Result<Surface, Error>
pub fn mime_data(&self, mime_type: &str) -> Option<Vec<u8>>
pub unsafe fn mime_data_raw(&self, mime_type: &str) -> Option<&[u8]>
pub fn set_mime_data<T: AsRef<[u8]> + 'static>( &self, mime_type: &str, slice: T ) -> Result<(), Error>
pub fn supports_mime_type(&self, mime_type: &str) -> bool
pub fn device(&self) -> Option<Device>
pub fn content(&self) -> Content
pub fn set_device_offset(&self, x_offset: f64, y_offset: f64)
pub fn device_offset(&self) -> (f64, f64)
pub fn set_device_scale(&self, x_scale: f64, y_scale: f64)
pub fn device_scale(&self) -> (f64, f64)
pub fn set_fallback_resolution( &self, x_pixels_per_inch: f64, y_pixels_per_inch: f64 )
pub fn fallback_resolution(&self) -> (f64, f64)
pub fn create_similar_image( &self, format: Format, width: i32, height: i32 ) -> Result<ImageSurface, Error>
pub fn map_to_image( &self, extents: Option<RectangleInt> ) -> Result<MappedImageSurface, Error>
pub fn mark_dirty(&self)
pub fn mark_dirty_rectangle(&self, x: i32, y: i32, width: i32, height: i32)
pub fn status(&self) -> Result<(), Error>
sourcepub fn set_user_data<T: 'static>(
&self,
key: &'static UserDataKey<T>,
value: Rc<T>
) -> Result<(), Error>
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
.
sourcepub fn user_data<T: 'static>(
&self,
key: &'static UserDataKey<T>
) -> Option<Rc<T>>
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.
sourcepub fn user_data_ptr<T: 'static>(
&self,
key: &'static UserDataKey<T>
) -> Option<NonNull<T>>
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.
sourcepub fn remove_user_data<T: 'static>(
&self,
key: &'static UserDataKey<T>
) -> Result<(), Error>
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.
pub fn flush(&self)
pub fn finish(&self)
pub fn type_(&self) -> SurfaceType
Trait Implementations§
source§impl AsRef<ImageSurface> for MappedImageSurface
impl AsRef<ImageSurface> for MappedImageSurface
source§fn as_ref(&self) -> &ImageSurface
fn as_ref(&self) -> &ImageSurface
Converts this type into a shared reference of the (usually inferred) input type.
source§impl AsRef<Surface> for ImageSurface
impl AsRef<Surface> for ImageSurface
source§impl Clone for ImageSurface
impl Clone for ImageSurface
source§fn clone(&self) -> ImageSurface
fn clone(&self) -> ImageSurface
Returns a copy of the value. Read more
1.0.0 · source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source
. Read moresource§impl Debug for ImageSurface
impl Debug for ImageSurface
source§impl Deref for ImageSurface
impl Deref for ImageSurface
source§impl From<ImageSurface> for Value
impl From<ImageSurface> for Value
source§fn from(v: ImageSurface) -> Self
fn from(v: ImageSurface) -> Self
Converts to this type from the input type.
source§impl FromGlibPtrBorrow<*mut cairo_surface_t> for ImageSurface
impl FromGlibPtrBorrow<*mut cairo_surface_t> for ImageSurface
source§unsafe fn from_glib_borrow(ptr: *mut cairo_surface_t) -> Borrowed<ImageSurface>
unsafe fn from_glib_borrow(ptr: *mut cairo_surface_t) -> Borrowed<ImageSurface>
Safety Read more
source§impl FromGlibPtrFull<*mut cairo_surface_t> for ImageSurface
impl FromGlibPtrFull<*mut cairo_surface_t> for ImageSurface
source§unsafe fn from_glib_full(ptr: *mut cairo_surface_t) -> ImageSurface
unsafe fn from_glib_full(ptr: *mut cairo_surface_t) -> ImageSurface
Safety Read more
source§impl FromGlibPtrNone<*mut cairo_surface_t> for ImageSurface
impl FromGlibPtrNone<*mut cairo_surface_t> for ImageSurface
source§unsafe fn from_glib_none(ptr: *mut cairo_surface_t) -> ImageSurface
unsafe fn from_glib_none(ptr: *mut cairo_surface_t) -> ImageSurface
Safety Read more
source§impl<'a> FromValue<'a> for &'a ImageSurface
impl<'a> FromValue<'a> for &'a ImageSurface
§type Checker = GenericValueTypeOrNoneChecker<&'a ImageSurface>
type Checker = GenericValueTypeOrNoneChecker<&'a ImageSurface>
Value type checker.
source§unsafe fn from_value(value: &'a Value) -> Self
unsafe fn from_value(value: &'a Value) -> Self
Get the contained value from a
Value
. Read moresource§impl<'a> FromValue<'a> for ImageSurface
impl<'a> FromValue<'a> for ImageSurface
§type Checker = GenericValueTypeOrNoneChecker<ImageSurface>
type Checker = GenericValueTypeOrNoneChecker<ImageSurface>
Value type checker.
source§unsafe fn from_value(value: &'a Value) -> Self
unsafe fn from_value(value: &'a Value) -> Self
Get the contained value from a
Value
. Read moresource§impl IntoGlibPtr<*mut cairo_surface_t> for ImageSurface
impl IntoGlibPtr<*mut cairo_surface_t> for ImageSurface
source§unsafe fn into_glib_ptr(self) -> *mut cairo_surface_t
unsafe fn into_glib_ptr(self) -> *mut cairo_surface_t
Transfer: full.
source§impl StaticType for ImageSurface
impl StaticType for ImageSurface
source§fn static_type() -> Type
fn static_type() -> Type
Returns the type identifier of
Self
.source§impl<'a> ToGlibPtr<'a, *mut cairo_surface_t> for ImageSurface
impl<'a> ToGlibPtr<'a, *mut cairo_surface_t> for ImageSurface
type Storage = PhantomData<&'a Surface>
source§fn to_glib_none(&'a self) -> Stash<'a, *mut cairo_surface_t, Self>
fn to_glib_none(&'a self) -> Stash<'a, *mut cairo_surface_t, Self>
Transfer: none. Read more
source§fn to_glib_full(&self) -> *mut cairo_surface_t
fn to_glib_full(&self) -> *mut cairo_surface_t
Transfer: full. Read more
source§fn to_glib_container(&'a self) -> Stash<'a, P, Self>
fn to_glib_container(&'a self) -> Stash<'a, P, Self>
Transfer: container. Read more
source§impl ToValue for ImageSurface
impl ToValue for ImageSurface
source§impl ToValueOptional for ImageSurface
impl ToValueOptional for ImageSurface
source§impl TryFrom<Surface> for ImageSurface
impl TryFrom<Surface> for ImageSurface
source§impl ValueType for ImageSurface
impl ValueType for ImageSurface
§type Type = ImageSurface
type Type = ImageSurface
Type to get the
Type
from. Read moreimpl ValueTypeOptional for ImageSurface
Auto Trait Implementations§
impl RefUnwindSafe for ImageSurface
impl !Send for ImageSurface
impl !Sync for ImageSurface
impl Unpin for ImageSurface
impl UnwindSafe for ImageSurface
Blanket Implementations§
source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
source§impl<T> IntoClosureReturnValue for T
impl<T> IntoClosureReturnValue for T
fn into_closure_return_value(self) -> Option<Value>
source§impl<T> StaticTypeExt for Twhere
T: StaticType,
impl<T> StaticTypeExt for Twhere
T: StaticType,
source§fn ensure_type()
fn ensure_type()
Ensures that the type has been registered with the type system.