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, SvgTheme? theme})
-
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, SvgTheme? theme})
- 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, SvgTheme? theme})
- 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, SvgTheme? theme})
- 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, SvgTheme? theme}) - 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, SvgTheme? theme})
- 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
- 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.label
for this picture.final - theme → SvgTheme?
-
The theme used when parsing SVG elements.
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