SVG images support

This commit is contained in:
Igor Kulikov
2021-07-07 14:10:37 +03:00
parent 4b75ecc235
commit 97cbb1d8bb
4 changed files with 27 additions and 13 deletions

View File

@@ -1,5 +1,7 @@
import 'dart:convert';
import 'package:flutter/material.dart';
import 'package:flutter_svg/flutter_svg.dart';
import 'package:thingsboard_client/thingsboard_client.dart';
abstract class Utils {
@@ -45,4 +47,13 @@ abstract class Utils {
}
}
static Widget imageFromBase64(String base64, {Color? color, double? width, double? height, String? semanticLabel}) {
var uriData = UriData.parse(base64);
if (uriData.mimeType == 'image/svg+xml') {
return SvgPicture.memory(uriData.contentAsBytes(), color: color, width: width, height: height, semanticsLabel: semanticLabel);
} else {
return Image.memory(uriData.contentAsBytes(), color: color, width: width, height: height, semanticLabel: semanticLabel);
}
}
}