pub struct Image<Handle = Handle> { /* private fields */ }Expand description
A frame that displays an image while keeping aspect ratio.
§Example
use iced::widget::image;
enum Message {
// ...
}
fn view(state: &State) -> Element<'_, Message> {
image("ferris.png").into()
}
Implementations§
Source§impl<Handle> Image<Handle>
impl<Handle> Image<Handle>
Sourcepub fn new(handle: impl Into<Handle>) -> Image<Handle>
Available on crate feature image only.
pub fn new(handle: impl Into<Handle>) -> Image<Handle>
image only.Creates a new Image with the given path.
Sourcepub fn width(self, width: impl Into<Length>) -> Image<Handle>
Available on crate feature image only.
pub fn width(self, width: impl Into<Length>) -> Image<Handle>
image only.Sets the width of the Image boundaries.
Sourcepub fn height(self, height: impl Into<Length>) -> Image<Handle>
Available on crate feature image only.
pub fn height(self, height: impl Into<Length>) -> Image<Handle>
image only.Sets the height of the Image boundaries.
Sourcepub fn expand(self, expand: bool) -> Image<Handle>
Available on crate feature image only.
pub fn expand(self, expand: bool) -> Image<Handle>
image only.Sets whether the Image should try to fill as much space
available as possible while keeping aspect ratio and without
allocating extra space in any axis with a Length::Shrink
sizing strategy.
This is similar to using Length::Fill for both the
width and the height,
but without the downside of blank space.
Sourcepub fn content_fit(self, content_fit: ContentFit) -> Image<Handle>
Available on crate feature image only.
pub fn content_fit(self, content_fit: ContentFit) -> Image<Handle>
image only.Sets the ContentFit of the Image.
Defaults to ContentFit::Contain
Sourcepub fn filter_method(self, filter_method: FilterMethod) -> Image<Handle>
Available on crate feature image only.
pub fn filter_method(self, filter_method: FilterMethod) -> Image<Handle>
image only.Sets the FilterMethod of the Image.
Sourcepub fn rotation(self, rotation: impl Into<Rotation>) -> Image<Handle>
Available on crate feature image only.
pub fn rotation(self, rotation: impl Into<Rotation>) -> Image<Handle>
image only.Sourcepub fn opacity(self, opacity: impl Into<f32>) -> Image<Handle>
Available on crate feature image only.
pub fn opacity(self, opacity: impl Into<f32>) -> Image<Handle>
image only.Sets the opacity of the Image.
It should be in the [0.0, 1.0] range—0.0 meaning completely transparent,
and 1.0 meaning completely opaque.
Sourcepub fn scale(self, scale: impl Into<f32>) -> Image<Handle>
Available on crate feature image only.
pub fn scale(self, scale: impl Into<f32>) -> Image<Handle>
image only.Sourcepub fn crop(self, region: Rectangle<u32>) -> Image<Handle>
Available on crate feature image only.
pub fn crop(self, region: Rectangle<u32>) -> Image<Handle>
image only.Crops the Image to the given region described by the Rectangle in absolute
coordinates.
Cropping is done before applying any transformation or ContentFit. In practice,
this means that cropping an Image with this method should produce the same result
as cropping it externally (e.g. with an image editor) and creating a new Handle
for the cropped version.
However, this method is much more efficient; since it just leverages scissoring during rendering and no image cropping actually takes place. Instead, it reuses the existing image allocations and should be as efficient as not cropping at all!
The region coordinates will be clamped to the image dimensions, if necessary.
Sourcepub fn border_radius(self, border_radius: impl Into<Radius>) -> Image<Handle>
Available on crate feature image only.
pub fn border_radius(self, border_radius: impl Into<Radius>) -> Image<Handle>
image only.Sets the border::Radius of the Image.
Currently, it will only be applied around the rectangular bounding box
of the Image.
Trait Implementations§
Source§impl<'a, Message, Theme, Renderer, Handle> From<Image<Handle>> for Element<'a, Message, Theme, Renderer>
impl<'a, Message, Theme, Renderer, Handle> From<Image<Handle>> for Element<'a, Message, Theme, Renderer>
Source§impl<Message, Theme, Renderer, Handle> Widget<Message, Theme, Renderer> for Image<Handle>
impl<Message, Theme, Renderer, Handle> Widget<Message, Theme, Renderer> for Image<Handle>
Source§fn draw(
&self,
_state: &Tree,
renderer: &mut Renderer,
_theme: &Theme,
_style: &Style,
layout: Layout<'_>,
_cursor: Cursor,
_viewport: &Rectangle,
)
fn draw( &self, _state: &Tree, renderer: &mut Renderer, _theme: &Theme, _style: &Style, layout: Layout<'_>, _cursor: Cursor, _viewport: &Rectangle, )
Widget using the associated Renderer.§fn operate(
&mut self,
_state: &mut Tree,
_layout: Layout<'_>,
_renderer: &Renderer,
_operation: &mut dyn Operation,
)
fn operate( &mut self, _state: &mut Tree, _layout: Layout<'_>, _renderer: &Renderer, _operation: &mut dyn Operation, )
§fn update(
&mut self,
_state: &mut Tree,
_event: &Event,
_layout: Layout<'_>,
_cursor: Cursor,
_renderer: &Renderer,
_clipboard: &mut dyn Clipboard,
_shell: &mut Shell<'_, Message>,
_viewport: &Rectangle,
)
fn update( &mut self, _state: &mut Tree, _event: &Event, _layout: Layout<'_>, _cursor: Cursor, _renderer: &Renderer, _clipboard: &mut dyn Clipboard, _shell: &mut Shell<'_, Message>, _viewport: &Rectangle, )
§fn mouse_interaction(
&self,
_state: &Tree,
_layout: Layout<'_>,
_cursor: Cursor,
_viewport: &Rectangle,
_renderer: &Renderer,
) -> Interaction
fn mouse_interaction( &self, _state: &Tree, _layout: Layout<'_>, _cursor: Cursor, _viewport: &Rectangle, _renderer: &Renderer, ) -> Interaction
Auto Trait Implementations§
impl<Handle> Freeze for Image<Handle>where
Handle: Freeze,
impl<Handle> RefUnwindSafe for Image<Handle>where
Handle: RefUnwindSafe,
impl<Handle> Send for Image<Handle>where
Handle: Send,
impl<Handle> Sync for Image<Handle>where
Handle: Sync,
impl<Handle> Unpin for Image<Handle>where
Handle: Unpin,
impl<Handle> UnwindSafe for Image<Handle>where
Handle: UnwindSafe,
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
§impl<T> Downcast for Twhere
T: Any,
impl<T> Downcast for Twhere
T: Any,
§fn into_any(self: Box<T>) -> Box<dyn Any>
fn into_any(self: Box<T>) -> Box<dyn Any>
Box<dyn Trait> (where Trait: Downcast) to Box<dyn Any>. Box<dyn Any> can
then be further downcast into Box<ConcreteType> where ConcreteType implements Trait.§fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
Rc<Trait> (where Trait: Downcast) to Rc<Any>. Rc<Any> can then be
further downcast into Rc<ConcreteType> where ConcreteType implements Trait.§fn as_any(&self) -> &(dyn Any + 'static)
fn as_any(&self) -> &(dyn Any + 'static)
&Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot
generate &Any’s vtable from &Trait’s.§fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
&mut Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot
generate &mut Any’s vtable from &mut Trait’s.§impl<T> DowncastSync for T
impl<T> DowncastSync for T
§impl<T> Instrument for T
impl<T> Instrument for T
§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<State, Message> IntoBoot<State, Message> for State
impl<State, Message> IntoBoot<State, Message> for State
Source§fn into_boot(self) -> (State, Task<Message>)
fn into_boot(self) -> (State, Task<Message>)
Application.Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more