Skip to main content

ImageHrefResolver

Struct ImageHrefResolver 

Source
pub struct ImageHrefResolver<'a> {
    pub resolve_data: ImageHrefDataResolverFn<'a>,
    pub resolve_string: ImageHrefStringResolverFn<'a>,
}
Expand description

An xlink:href resolver for <image> elements.

This type can be useful if you want to have an alternative xlink:href handling to the default one. For example, you can forbid access to local files (which is allowed by default) or add support for resolving actual URLs (usvg doesn’t do any network requests).

Fields§

§resolve_data: ImageHrefDataResolverFn<'a>

Resolver function that will be used when xlink:href contains a Data URL.

A function would be called with mime, decoded base64 data and parsing options.

§resolve_string: ImageHrefStringResolverFn<'a>

Resolver function that will be used to handle an arbitrary string in xlink:href.

Implementations§

Source§

impl ImageHrefResolver<'_>

Source

pub fn default_data_resolver() -> ImageHrefDataResolverFn<'static>

Creates a default Data URL resolver closure.

base64 encoded data is already decoded.

The default implementation would try to load JPEG, PNG, GIF, WebP, SVG and SVGZ types. Note that it will simply match the mime or data’s magic. The actual images would not be decoded. It’s up to the renderer.

Source

pub fn default_string_resolver() -> ImageHrefStringResolverFn<'static>

Creates a default string resolver (no_std fallback).

Without filesystem access, this resolver always returns None.

Trait Implementations§

Source§

impl Debug for ImageHrefResolver<'_>

Source§

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

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

impl Default for ImageHrefResolver<'_>

Source§

fn default() -> Self

Returns the “default value” for a type. Read more

Auto Trait Implementations§

§

impl<'a> Freeze for ImageHrefResolver<'a>

§

impl<'a> !RefUnwindSafe for ImageHrefResolver<'a>

§

impl<'a> Send for ImageHrefResolver<'a>

§

impl<'a> Sync for ImageHrefResolver<'a>

§

impl<'a> Unpin for ImageHrefResolver<'a>

§

impl<'a> UnsafeUnpin for ImageHrefResolver<'a>

§

impl<'a> !UnwindSafe for ImageHrefResolver<'a>

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.