SvgPicture class
A widget that will parse SVG data into a Picture using a PictureProvider.
The picture will be cached using the PictureCache, incorporating any color
filtering used into the key (meaning the same SVG with two different color
arguments applied would be two cache entries).
- Inheritance
-
- Object
- DiagnosticableTree
- Widget
- StatefulWidget
- SvgPicture
Constructors
- SvgPicture(PictureProvider pictureProvider, {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, bool cacheColorFilter = false, Color? currentColor})
-
Instantiates a widget that renders an SVG picture using the
pictureProvider.const - SvgPicture.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, Color? color, BlendMode colorBlendMode = BlendMode.srcIn, String? semanticsLabel, bool excludeFromSemantics = false, Clip clipBehavior = Clip.hardEdge, bool cacheColorFilter = false, Color? currentColor})
- Instantiates a widget that renders an SVG picture from an AssetBundle.
- SvgPicture.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, Color? color, BlendMode colorBlendMode = BlendMode.srcIn, String? semanticsLabel, bool excludeFromSemantics = false, Clip clipBehavior = Clip.hardEdge, bool cacheColorFilter = false, Color? currentColor})
- Creates a widget that displays a PictureStream obtained from a File.
- SvgPicture.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, Color? color, BlendMode colorBlendMode = BlendMode.srcIn, String? semanticsLabel, bool excludeFromSemantics = false, Clip clipBehavior = Clip.hardEdge, bool cacheColorFilter = false, Color? currentColor})
- Creates a widget that displays a PictureStream obtained from a Uint8List.
-
SvgPicture.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, Color? color, BlendMode colorBlendMode = BlendMode.srcIn, String? semanticsLabel, bool excludeFromSemantics = false, Clip clipBehavior = Clip.hardEdge, bool cacheColorFilter = false, Color? currentColor}) - Creates a widget that displays a PictureStream obtained from the network.
- SvgPicture.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, Color? color, BlendMode colorBlendMode = BlendMode.srcIn, String? semanticsLabel, bool excludeFromSemantics = false, Clip clipBehavior = Clip.hardEdge, bool cacheColorFilter = false, Color? currentColor})
- Creates a widget that displays a PictureStream 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
- cacheColorFilter → bool
-
Whether to cache the picture with the colorFilter applied or not.
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
- currentColor → Color?
-
The default color applied to SVG elements that inherit the color property.
See: https://developer.mozilla.org/en-US/docs/Web/CSS/color_value#currentcolor_keyword
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
- pictureProvider → PictureProvider
-
The PictureProvider used to resolve the SVG.
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.labelfor 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
-
createElement(
) → StatefulElement -
Creates a StatefulElement to manage this widget's location in the tree.
inherited
-
createState(
) → State< SvgPicture> -
Creates the mutable state for this widget at a given location in the tree.
override
-
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.
inherited
-
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, int wrapWidth = 65}) → 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
-
svgByteDecoderBuilder
→ PictureInfoDecoderBuilder<
Uint8List> -
A PictureInfoDecoderBuilder for Uint8Lists that will clip to the viewBox.
final
-
svgByteDecoderOutsideViewBoxBuilder
→ PictureInfoDecoderBuilder<
Uint8List> -
A PictureInfoDecoderBuilder for Uint8Lists that will not clip to the viewBox.
final
-
svgStringDecoderBuilder
→ PictureInfoDecoderBuilder<
String> -
A PictureInfoDecoderBuilder for strings that will clip to the viewBox.
final
-
svgStringDecoderOutsideViewBoxBuilder
→ PictureInfoDecoderBuilder<
String> -
A PictureInfoDecoderBuilder for Strings that will not clip to the viewBox.
final