generatePathForCharacter method
Path
generatePathForCharacter(
- dynamic cIndex
)
Converts a character into a Flutter Path you can
directly draw on a Canvas
Implementation
Path generatePathForCharacter(cIndex) {
var svgPath = generateSVGPathForCharacter(cIndex);
var commands = svgPath.split(" ");
Path path = Path();
commands.forEach((command) {
if (command.startsWith("M")) {
var coords = command.substring(1).split(",");
var x = double.parse(coords[0]);
var y = double.parse(coords[1]);
path.moveTo(x, y);
}
if (command.startsWith("L")) {
var coords = command.substring(1).split(",");
var x = double.parse(coords[0]);
var y = double.parse(coords[1]);
path.lineTo(x, y);
}
if (command.startsWith("Q")) {
var coords = command.substring(1).split(",");
var x1 = double.parse(coords[0]);
var y1 = double.parse(coords[1]);
var x2 = double.parse(coords[2]);
var y2 = double.parse(coords[3]);
path.quadraticBezierTo(x1, y1, x2, y2);
}
if (command.startsWith("z")) {
path.close();
}
});
return path;
}