Function rasterize_svg_source

Source
pub fn rasterize_svg_source(source: &SvgSource, px: u32) -> Option<Vec<u8>>
Expand description

Rasterizes an arbitrary legacy SVG source without application-icon validation.

This adapter bypasses source-byte, resource-syntax, square-shape, dimension, visible-alpha, and cache checks. It uses default [usvg] parsing and returns a newly allocated, square, premultiplied RGBA8 vector; px == 0 becomes one. Invalid SVG or raster allocation failure returns None with no diagnostic. Consumers requiring the application-icon security/portability policy must use rasterize_app_icon instead.

ยงExamples

use ailloli_ui_core::SvgSource;
use ailloli_ui_icon::rasterize_svg_source;
let source = SvgSource::Static(br#"<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 2 1"><rect width="2" height="1"/></svg>"#);
assert_eq!(rasterize_svg_source(&source, 3).unwrap().len(), 3 * 3 * 4);
assert!(rasterize_svg_source(&SvgSource::Static(b"not svg"), 3).is_none());