resizeModeToBoxFit function
Implementation
BoxFit resizeModeToBoxFit(String? resizeMode) {
if (!isEmpty(resizeMode)) {
if (enumValueToString(ImageResizeMode.contain) == resizeMode) {
// 在保持图片宽高比的前提下缩放图片,直到宽度和高度都小于等于容器视图的尺寸
// 这样图片完全被包裹在容器中,容器中可能留有空白
return BoxFit.contain;
} else if (enumValueToString(ImageResizeMode.center) == resizeMode) {
// 居中不拉伸
return BoxFit.none;
} else if (enumValueToString(ImageResizeMode.cover) == resizeMode) {
// 在保持图片宽高比的前提下缩放图片,直到宽度和高度都大于等于容器视图的尺寸
// 这样图片完全覆盖甚至超出容器,容器中不留任何空白
return BoxFit.cover;
} else if (enumValueToString(ImageResizeMode.auto) == resizeMode) {
// 不拉伸,居左上
return BoxFit.none;
} else {
// 拉伸图片且不维持宽高比,直到宽高都刚好填满容器
return BoxFit.fill;
}
}
return BoxFit.fill;
}