Extract SVG icons from an SVG font
import svgfont2svgicons from 'svgfont2svgicons';
import fs from 'node:fs';
const fontStream = fs.createReadStream('myFont.svg');
const iconProvider = svgfont2svgicons(options);
// Piping the font
fontStream.pipe(iconProvider);
// Saving the SVG files
iconProvider.on('readable', function() {
let icon;
do {
icon = iconProvider.read();
if(icon) {
console.log('New icon:', icon.metadata.name, icon.metadata.unicode);
icon.pipe(fs.createWriteStream(icon.metadata.name + '.svg'));
}
} while(null !== icon);
}).once('end', function() {
console.log('No more icons!')
});
svgfont2svgicons font/src/file.svg icons/dest/directory
Currently no options, feel free to suggest some in the issues.
Feel free to pull your code if you agree with publishing under the MIT license.