flutter_svg_pro 1.0.6
flutter_svg_pro: ^1.0.6 copied to clipboard
An interactive, highly-optimized, isolate-powered SVG parsing and rendering engine for Flutter with CSS styling and selection hit-testing.
1.0.6 #
- Added support for a custom
loadingWidgetinSvgProViewerthat is displayed during async SVG parsing, falling back to a standard centeredCircularProgressIndicatorif null.
1.0.5 #
- Added standard SVG fallback styling. Classless SVG elements with no styling attributes now default to a solid black fill (
#000000) instead of rendering as transparent, fully conforming to the W3C SVG specification. - Resolved rendering bugs where sidecar vehicle outlines (
left_side.svgandright_side.svg) failed to draw on white backgrounds due to lack of defined class styling on the main outline paths. - Added robust merging of inline
opacityattributes and improved styling registry fallbacks.
1.0.4 #
- Implemented
didUpdateWidgetinSvgProViewerto dynamically reload SVG resources and CSS data whenrawSvgorexternalCssvalues change. - Added
selectedPartIdssupport toSvgProViewerenabling external selection state tracking and synchronization. - Updated the example application to a premium, responsive multi-view car diagnostic dashboard displaying all 5 main side views with persistent cross-view selections and state indicators.
1.0.3 #
- Enhanced
SvgParserEngineto robustly parse multiple chained transformation commands (e.g.,rotate(...) translate(...)). - Introduced support for parsing CSS-based
transform:styles directly from elements. - Added geometric mapping support for the basic
<line>SVG primitive. - Implemented parsing and execution of
<use>tags mapped from<defs>and explicitly declared elements. - Enhanced resilience against minified SVGs using negative numbers without spaces in transformations (e.g.
translate(100-200)). - Added matrix support for
skewXandskewYattributes. - Root
<svg>transformations are now evaluated and propagated to the vector tree correctly.
1.0.2 #
- Updated
SvgStyleRegistryto correctly merge optional stylesheet classes properties with inline attributes following standard CSS precedence order.
1.0.1 #
- Improved selection hit-testing selectivity by only allowing paths/groups with explicit IDs to be interactive and selectable, preventing accidental selection of background/decorative shapes (like border outlines or shadows) auto-assigned with fallback
part_XIDs. - Resolved touch-point mapping offsets under arbitrary layout/height constraints by utilizing actual visual dimensions (
renderBox.size) instead of max parent constraints (BoxConstraints). - Prepend
// ignore_for_file: avoid_printto example tests to ensure a perfect 100/100 analyzer score.
1.0.0 #
- Official stable release of
flutter_svg_prowith fully documented, 100% compliant pub.dev scoring API. - Optimized dependency constraints (xml and vector_math) for maximum compatibility with the latest Flutter ecosystems.
- Resolved deprecation warnings, switching to modern
withValuesandtoARGB32APIs.
1.0.0-beta #
- Initial beta release of
flutter_svg_pro. - Added
SvgProViewerwidget supporting interactive hit-testing, single/multi-selection modes, and custom selection highlight overlays. - Implemented
SvgParserEnginewith hybrid auto-threshold isolate parsing: small SVGs (<50KB) parse instantly on the main thread, while large SVGs automatically execute inside a background isolate. - Implemented zero-copy isolate transfer protocol utilizing flat Dart primitive maps to eliminate serialization overhead and memory spikes.
- Implemented
SvgStyleRegistrywith full support for CSS selectors, inline style attributes, and embedded/external stylesheets. - Resolved viewport scaling and coordinate transformations based on SVG
viewBoxproperties.