fillText static method
填充字符串,当字符传递小于给定的长度则以空白符填充,如果超出则截取
当FillTextAlign.center时,可用长度为奇数默认左填充优先
text 字符串
len 字符长度
align 内容对齐方向
Implementation
static String fillText({
required String text,
int len = 16,
FillTextAlign align = FillTextAlign.right,
}) {
String str = '';
final textLen = text.length;
if (textLen > len) {
str = text.substring(0, len);
} else if (textLen < len) {
final availableCount = len - textLen;
final blank = List.generate(availableCount, (index) => ' ').join();
if (align == FillTextAlign.right) {
str = '$blank$text';
} else if (align == FillTextAlign.center) {
final isOdd = availableCount.isOdd;
int start = availableCount ~/ 2;
if (isOdd) {
start = (availableCount + 1) ~/ 2;
}
str = '${blank.substring(0, start)}$text${blank.substring(start)}';
} else {
str = '$text$blank';
}
} else {
str = text;
}
return str;
}