Trait image::GenericImage
source · [−]pub trait GenericImage: GenericImageView {
type InnerImage: GenericImage<Pixel = Self::Pixel>;
fn get_pixel_mut(&mut self, x: u32, y: u32) -> &mut Self::Pixel;
fn put_pixel(&mut self, x: u32, y: u32, pixel: Self::Pixel);
fn blend_pixel(&mut self, x: u32, y: u32, pixel: Self::Pixel);
fn inner_mut(&mut self) -> &mut Self::InnerImage;
unsafe fn unsafe_put_pixel(&mut self, x: u32, y: u32, pixel: Self::Pixel) { ... }
fn copy_from<O>(&mut self, other: &O, x: u32, y: u32) -> ImageResult<()>
where
O: GenericImageView<Pixel = Self::Pixel>,
{ ... }
fn copy_within(&mut self, source: Rect, x: u32, y: u32) -> bool { ... }
fn sub_image(
&mut self,
x: u32,
y: u32,
width: u32,
height: u32
) -> SubImage<&mut Self::InnerImage> { ... }
}
Expand description
A trait for manipulating images.
Associated Types
type InnerImage: GenericImage<Pixel = Self::Pixel>
type InnerImage: GenericImage<Pixel = Self::Pixel>
Underlying image type. This is mainly used by SubImages in order to always have a reference to the original image. This allows for less indirections and it eases the use of nested SubImages.
Required methods
fn get_pixel_mut(&mut self, x: u32, y: u32) -> &mut Self::Pixel
fn get_pixel_mut(&mut self, x: u32, y: u32) -> &mut Self::Pixel
Gets a reference to the mutable pixel at location (x, y)
. Indexed from top left.
Panics
Panics if (x, y)
is out of bounds.
fn blend_pixel(&mut self, x: u32, y: u32, pixel: Self::Pixel)
fn blend_pixel(&mut self, x: u32, y: u32, pixel: Self::Pixel)
Put a pixel at location (x, y), taking into account alpha channels
DEPRECATED: This method will be removed. Blend the pixel directly instead.
fn inner_mut(&mut self) -> &mut Self::InnerImage
fn inner_mut(&mut self) -> &mut Self::InnerImage
Returns a mutable reference to the underlying image.
Provided methods
unsafe fn unsafe_put_pixel(&mut self, x: u32, y: u32, pixel: Self::Pixel)
unsafe fn unsafe_put_pixel(&mut self, x: u32, y: u32, pixel: Self::Pixel)
fn copy_from<O>(&mut self, other: &O, x: u32, y: u32) -> ImageResult<()> where
O: GenericImageView<Pixel = Self::Pixel>,
fn copy_from<O>(&mut self, other: &O, x: u32, y: u32) -> ImageResult<()> where
O: GenericImageView<Pixel = Self::Pixel>,
Copies all of the pixels from another image into this image.
The other image is copied with the top-left corner of the other image placed at (x, y).
In order to copy only a piece of the other image, use GenericImageView::view
.
You can use FlatSamples
to source pixels from an arbitrary regular raster of channel
values, for example from a foreign interface or a fixed image.
Returns
Returns an error if the image is too large to be copied at the given position
Copies all of the pixels from one part of this image to another part of this image.
The destination rectangle of the copy is specified with the top-left corner placed at (x, y).
Returns
true
if the copy was successful, false
if the image could not
be copied due to size constraints.
Returns a mutable subimage that is a view into this image.
If you want an immutable subimage instead, use GenericImageView::view
The coordinates set the position of the top left corner of the SubImage.