/**
  * creates single SVG files out of a SVG font and saves them to the specified directory
  *
  * @param  InputInterface  $input  input
  * @param  OutputInterface $output output
  * @return void
  */
 protected function execute(InputInterface $input, OutputInterface $output)
 {
     $fontFile = realpath($input->getArgument('font-file'));
     if ($fontFile === false || !file_exists($fontFile)) {
         throw new \InvalidArgumentException('"' . $input->getArgument('font-file') . '" does not exist');
     }
     $outputDirectory = realpath($input->getArgument('output-directory'));
     if ($outputDirectory === false || !file_exists($outputDirectory) || !is_dir($outputDirectory)) {
         throw new \InvalidArgumentException('"' . $input->getArgument('output-directory') . '" is no directory');
     }
     $generator = new IconFontGenerator();
     $output->writeln('reading font file from "' . $fontFile . '" ...');
     $generator->generateFromFont(new Font(array(), file_get_contents($fontFile)));
     $output->writeln('writing SVG files to "' . $outputDirectory . '" ...');
     $generator->saveGlyphsToDir($outputDirectory);
     $output->getFormatter()->setStyle('success', new OutputFormatterStyle(null, null, array('bold', 'reverse')));
     $output->writeln('<success>created SVG files successfully</success>');
 }