stac_svg

Pub Version Pub Likes

A Stac WidgetParser to render SVG images using the flutter_svg package.

Getting started

Add this package to your pubspec.yaml file:

dependencies:
  stac_svg: ^0.0.3

or run this command:

flutter pub add stac_svg

Usage

Import the package in your Dart file:

import 'package:stac_svg/stac_svg.dart';

Register the Widget Parser:

void main() async {
  await Stac.initialize(
    parsers: [
      StacSvgWidgetParser(),
    ],
  );
  runApp(const MyApp());
}

Svg Widget JSON

Basic String SVG

{
  "type": "svg",
  "src": "<svg ...>...</svg>",
  "sourceType": "string"
}

Asset SVG

{
  "type": "svg",
  "src": "assets/images/logo.svg",
  "sourceType": "asset",
  "width": 100,
  "height": 100
}

Network SVG

{
  "type": "svg",
  "src": "https://example.com/image.svg",
  "sourceType": "network",
  "placeholder": {
    "type": "circularProgressIndicator"
  }
}

Svg Widget Properties

Property Type Default Description
src String Required The source of the SVG (URL, Asset Path, or String content).
sourceType String "string" The type of source: asset, network, or string.
width double null The width of the SVG.
height double null The height of the SVG.
fit String "contain" How the SVG should be inscribed into the box.
alignment String "center" How to align the SVG within its bounds.
matchTextDirection bool false Whether to paint the SVG in the direction of the TextDirection.
allowDrawingOutsideViewBox bool false Whether to allow the SVG to draw outside its view box.
placeholder Map null A Stac widget to display while the SVG is loading (mostly for network).
semanticsLabel String null The semantic label for the SVG.
excludeFromSemantics bool false Whether to exclude this SVG from semantics.
color String null The color to apply to the SVG (using ColorFilter).
blendMode String "srcIn" The blend mode to use with the color filter.

Built with ❤️ by the Halal Shop Team.

Libraries

stac_svg