【问题标题】:how to stretching SVG in flutter?如何在颤动中拉伸SVG?
【发布时间】:2020-04-26 01:40:28
【问题描述】:
**如何拉伸 svg 图像?
代码是:**
child: SvgPicture.asset(
'assets/images/accessories.svg',
height: constraints.maxHeight * 0.5,
width: constraints.maxWidth * 0.8,
),
【问题讨论】:
标签:
android
flutter
dart
visual-studio-code
【解决方案1】:
您可以根据需要使用 SvgPicture 小部件的 fit 属性来提供对资产图像的拟合。
一些适合的属性是
BoxFit.contain
尽可能大,同时仍将源完全包含在目标框中。
BoxFit.cover
在覆盖整个目标框的同时尽可能小。
BoxFit.fill
通过扭曲源的纵横比来填充目标框。
BoxFit.fitHeight
确保显示源的完整高度,无论这是否意味着源水平溢出目标框。
BoxFit.fitWidth
确保显示源的全宽,无论这是否意味着源垂直溢出目标框。
BoxFit.none
在目标框内对齐源(默认情况下,居中)并丢弃源中位于框外的任何部分。
BoxFit.scaleDown
尽可能大,同时仍将源完全包含在目标框中。
更多详细参考请见official documentation
【解决方案2】:
您可以在下面这样使用 SvgPicture 小部件的 fit 属性。
Widget build(BuildContext context) {
return Container(
child: Stack(
children: [
FittedBox(
fit: BoxFit.cover,
child: SvgPicture.asset('assets/icons/bg.svg'),
),