Dart 颤振SVG渲染
我尝试将一个带有SVG源的图像添加到我的Flatter应用程序中Dart 颤振SVG渲染,dart,flutter,Dart,Flutter,我尝试将一个带有SVG源的图像添加到我的Flatter应用程序中 newassetimage(“assets/images/candle.svg”) 但我没有得到任何视觉反馈。 如何在flatter中渲染SVG图片 颤振当前不支持SVG。跟踪更新 如果您确实需要矢量绘制,您可以将作为如何使用画布API绘制的示例,或者在本机端对图像进行光栅化,并将其作为位图传递给Flutter,但目前您最好的选择可能是嵌入高分辨率光栅化资产图像。目前的解决方法是使用字体 使用 static const Ic
newassetimage(“assets/images/candle.svg”)
但我没有得到任何视觉反馈。
如何在flatter中渲染SVG图片 颤振当前不支持SVG。跟踪更新
如果您确实需要矢量绘制,您可以将作为如何使用
画布API绘制的示例,或者在本机端对图像进行光栅化,并将其作为位图传递给Flutter,但目前您最好的选择可能是嵌入高分辨率光栅化资产图像。目前的解决方法是使用字体
使用
static const IconData TabBarHome= const IconData(0xe906, fontFamily: 'icomoon');
static const IconData TabBarExplore= const IconData(0xe902, fontFamily: 'icomoon');
替换####eg(906)字体在很多情况下都是很好的选择
我一直在开发一个在画布上渲染SVG的库,可在以下位置获得:
现在的API看起来像
new SvgPicture.asset('asset_name.svg')
呈现asset_name.svg(大小与其父级一致,例如SizedBox
)。您还可以指定一种颜色
和混合模式
,用于为资产着色
现在,它可以在pub上使用,并且最低版本为0.3.6。它可以处理大量的案例,但不是所有的——有关更新和文件问题,请参阅GitHub repo
Colin Jackson提到的最初GitHub问题实际上并不打算主要关注Flatter中的SVG。为此,我在这里打开了另一个问题:来自flatter社区的开发人员创建了一个lib来处理svg文件。我们可以把它当作
new SvgPicture.asset(
'assets/images/candle.svg',
height: 20.0,
width: 20.0,
allowDrawingOutsideViewBox: true,
),
我找到了一个SVG的小示例。您可以使用flare创建动画,只需将.flr作为资源导入即可
import 'package:flare_flutter/flare_actor.dart';
class MyHomePage extends StatefulWidget {
@override
_MyHomePageState createState() => new _MyHomePageState();
}
class _MyHomePageState extends State<MyHomePage> {
@override
Widget build(BuildContext context) {
return new FlareActor("assets/Filip.flr", alignment:Alignment.center, fit:BoxFit.contain, animation:"idle");
}
}
import'包:flare_flatter/flare_actor.dart';
类MyHomePage扩展StatefulWidget{
@凌驾
_MyHomePageState createState()=>new_MyHomePageState();
}
类_MyHomePageState扩展状态{
@凌驾
小部件构建(构建上下文){
返回新的FlareActor(“assets/Filip.flr”,alignment:alignment.center,fit:BoxFit.contain,动画:“idle”);
}
}
访问flare_颤振您可以按照以下步骤操作
-访问
-上传您的SVG图标
-单击下载按钮
-您将获得两个文件
1.iconname.dart
2。iconname.ttf字体文件
-在flatter&import iconname.dart中使用此文件
您可以使用此库渲染SVG图像-
范例-
Container(
child: SvgPicture.asset("assets/images/yourImage.svg")
)
第一步。在pubspec.yaml中添加依赖项
dependencies:
flutter_svg: any
任何版本的优点是可以在任何SDK版本中使用
第二步导入应用程序中的颤振svg包
import 'package:flutter_svg/flutter_svg.dart';
第三步。就像下面这样使用
SvgPicture.asset(
'assets/images/bm-icon1.svg',
width: 18.0,
height: 18.0,
),
此外,如果您不需要颜色,您可以始终按照图标软件包的方式使用字体。毕竟,他只需要渲染svg图像,任何svg库都可以这样做。本期自2016年2月13日起发行。“我们还要等多久?”看看丹·菲尔德的回答。用户flatter\u svg
packageJust FYI-这不是官方/第一方插件。这就是说,它应该支持很多常见的用例。是的,这个插件依赖于其他软件包,所以让作者不断更新它是非常重要的。我无法使用此软件包,因为其他软件包与其旧的xml ^4.0.x依赖项有点脱离主题,但此软件包是否支持iOS?据我所知,iOS支持PDF格式的向量,所以我只是好奇这是否可以用于在iOS上渲染向量,它应该可以在任何平台上工作。它都是用Dart编写的,使用的是Canvas
方法。为什么它不支持最新的颤振稳定而不是预览呢?颤振有dart2支持吗?我希望将多个svgelement组合成一个大的序列化字符串,然后使用您的库来呈现SVGdart:svg与HTML和dart2js一起使用。它与此非常不同。请尝试使用简单易用的flatter_svg 0.14.0
软件包。它的工作原理类似于charm更多信息,这一切都要感谢这个将chrome的svg渲染逻辑移植到Dart的家伙。我如何使用它?假设我在asset/svg/mysvg.svg中有一个svg文件,我不能用路径替换十六进制。第一个参数是一个int。这个包可以按照我的要求正常工作
SvgPicture.asset(
'assets/images/bm-icon1.svg',
width: 18.0,
height: 18.0,
),