generateColor function
Generate a time invariant Hex color from a text
.
Implementation
String generateColor(String text) {
var b = 1;
var d = 0;
var f = 1;
if (text.isNotEmpty) {
for (var i = 0; i < text.length; i++) {
if (text[i].codeUnitAt(0) > d) (d = text[i].codeUnitAt(0));
f = seed ~/ d;
b = (b + text[i].codeUnitAt(0) * f * factor) % seed;
}
}
var hex = ((b * text.length) % seed).toRadixString(16);
if (hex.length < 6) {
var i = 0;
while (hex.length != 6) {
hex += hex[i % hex.length];
i++;
}
}
return '#' + hex;
}