CustomSvg class

A widget that will parse SVG data for rendering on screen.

Inheritance

Constructors

CustomSvg(BytesLoader bytesLoader, {Key? key, double? width, double? height, BoxFit fit = BoxFit.contain, AlignmentGeometry alignment = Alignment.center, bool matchTextDirection = false, bool allowDrawingOutsideViewBox = false, WidgetBuilder? placeholderBuilder, ColorFilter? colorFilter, String? semanticsLabel, bool excludeFromSemantics = false, Clip clipBehavior = Clip.hardEdge, @Deprecated('No code should use this parameter. It never was implemented properly. ' 'The SVG theme must be set on the bytesLoader.') SvgTheme? theme, @Deprecated('This parameter is deprecated and is no longer implemented.') bool cacheColorFilter = false})
Instantiates a widget that renders an SVG picture using the pictureProvider.
const
CustomSvg.asset(String assetName, {Key? key, bool matchTextDirection = false, AssetBundle? bundle, String? package, double? width, double? height, BoxFit fit = BoxFit.contain, AlignmentGeometry alignment = Alignment.center, bool allowDrawingOutsideViewBox = false, WidgetBuilder? placeholderBuilder, String? semanticsLabel, bool excludeFromSemantics = false, Clip clipBehavior = Clip.hardEdge, SvgTheme? theme, ColorFilter? colorFilter, @Deprecated('This parameter is deprecated and is no longer implemented.') Color? color, @Deprecated('This parameter is deprecated and is no longer implemented.') BlendMode colorBlendMode = ui.BlendMode.srcIn, @Deprecated('This parameter is deprecated and is no longer implemented.') bool cacheColorFilter = false})
Instantiates a widget that renders an SVG picture from an AssetBundle.
CustomSvg.file(File file, {Key? key, double? width, double? height, BoxFit fit = BoxFit.contain, AlignmentGeometry alignment = Alignment.center, bool matchTextDirection = false, bool allowDrawingOutsideViewBox = false, WidgetBuilder? placeholderBuilder, ColorFilter? colorFilter, @Deprecated('This parameter is deprecated and is no longer implemented.') Color? color, @Deprecated('This parameter is deprecated and is no longer implemented.') BlendMode colorBlendMode = ui.BlendMode.srcIn, String? semanticsLabel, bool excludeFromSemantics = false, Clip clipBehavior = Clip.hardEdge, SvgTheme? theme, @Deprecated('This parameter is deprecated and is no longer implemented.') bool cacheColorFilter = false})
Creates a widget that displays an SVG obtained from a File.
CustomSvg.memory(Uint8List bytes, {Key? key, double? width, double? height, BoxFit fit = BoxFit.contain, AlignmentGeometry alignment = Alignment.center, bool matchTextDirection = false, bool allowDrawingOutsideViewBox = false, WidgetBuilder? placeholderBuilder, ColorFilter? colorFilter, @Deprecated('This parameter is deprecated and is no longer implemented.') Color? color, @Deprecated('This parameter is deprecated and is no longer implemented.') BlendMode colorBlendMode = ui.BlendMode.srcIn, String? semanticsLabel, bool excludeFromSemantics = false, Clip clipBehavior = Clip.hardEdge, SvgTheme? theme, @Deprecated('This parameter is deprecated and is no longer implemented.') bool cacheColorFilter = false})
Creates a widget that displays an SVG obtained from a Uint8List.
CustomSvg.network(String url, {Key? key, Map<String, String>? headers, double? width, double? height, BoxFit fit = BoxFit.contain, AlignmentGeometry alignment = Alignment.center, bool matchTextDirection = false, bool allowDrawingOutsideViewBox = false, WidgetBuilder? placeholderBuilder, ColorFilter? colorFilter, @Deprecated('This parameter is deprecated and is no longer implemented.') Color? color, @Deprecated('This parameter is deprecated and is no longer implemented.') BlendMode colorBlendMode = ui.BlendMode.srcIn, String? semanticsLabel, bool excludeFromSemantics = false, Clip clipBehavior = Clip.hardEdge, @Deprecated('This parameter is deprecated and is no longer implemented.') bool cacheColorFilter = false, SvgTheme? theme, Client? httpClient})
Creates a widget that displays an SVG obtained from the network.
CustomSvg.string(String string, {Key? key, double? width, double? height, BoxFit fit = BoxFit.contain, AlignmentGeometry alignment = Alignment.center, bool matchTextDirection = false, bool allowDrawingOutsideViewBox = false, WidgetBuilder? placeholderBuilder, ColorFilter? colorFilter, @Deprecated('This parameter is deprecated and is no longer implemented.') Color? color, @Deprecated('This parameter is deprecated and is no longer implemented.') BlendMode colorBlendMode = ui.BlendMode.srcIn, String? semanticsLabel, bool excludeFromSemantics = false, Clip clipBehavior = Clip.hardEdge, SvgTheme? theme, @Deprecated('This parameter is deprecated and is no longer implemented.') bool cacheColorFilter = false})
Creates a widget that displays an SVG obtained from a String.

Properties

alignment AlignmentGeometry
How to align the picture within its parent widget.
final
allowDrawingOutsideViewBox bool
If true, will allow the SVG to be drawn outside of the clip boundary of its viewBox.
final
bytesLoader BytesLoader
The BytesLoader used to resolve the SVG.
final
clipBehavior Clip
The content will be clipped (or not) according to this option.
final
colorFilter ColorFilter?
The color filter, if any, to apply to this widget.
final
excludeFromSemantics bool
Whether to exclude this picture from semantics.
final
fit BoxFit
How to inscribe the picture into the space allocated during layout. The default is BoxFit.contain.
final
hashCode int
The hash code for this object.
no setterinherited
height double?
If specified, the height to use for the SVG. If unspecified, the SVG will take the height of its parent.
final
key Key?
Controls how one widget replaces another widget in the tree.
finalinherited
matchTextDirection bool
If true, will horizontally flip the picture in TextDirection.rtl contexts.
final
placeholderBuilder WidgetBuilder?
The placeholder to use while fetching, decoding, and parsing the SVG data.
final
runtimeType Type
A representation of the runtime type of the object.
no setterinherited
semanticsLabel String?
The Semantics.label for this picture.
final
width double?
If specified, the width to use for the SVG. If unspecified, the SVG will take the width of its parent.
final

Methods

build(BuildContext context) Widget
Describes the part of the user interface represented by this widget.
override
createElement() StatelessElement
Creates a StatelessElement to manage this widget's location in the tree.
inherited
debugDescribeChildren() List<DiagnosticsNode>
Returns a list of DiagnosticsNode objects describing this node's children.
inherited
debugFillProperties(DiagnosticPropertiesBuilder properties) → void
Add additional properties associated with the node.
override
noSuchMethod(Invocation invocation) → dynamic
Invoked when a nonexistent method or property is accessed.
inherited
toDiagnosticsNode({String? name, DiagnosticsTreeStyle? style}) DiagnosticsNode
Returns a debug representation of the object that is used by debugging tools and by DiagnosticsNode.toStringDeep.
inherited
toString({DiagnosticLevel minLevel = DiagnosticLevel.info}) String
A string representation of this object.
inherited
toStringDeep({String prefixLineOne = '', String? prefixOtherLines, DiagnosticLevel minLevel = DiagnosticLevel.debug}) String
Returns a string representation of this node and its descendants.
inherited
toStringShallow({String joiner = ', ', DiagnosticLevel minLevel = DiagnosticLevel.debug}) String
Returns a one-line detailed description of the object.
inherited
toStringShort() String
A short, textual description of this widget.
inherited

Operators

operator ==(Object other) bool
The equality operator.
inherited

Static Properties

defaultPlaceholderBuilder WidgetBuilder
The default placeholder for a SVG that may take time to parse or retrieve, e.g. from a network location.
getter/setter pair