/** * creates a CSS file with icon classes from a SVG font * * @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'); } $outputFile = $input->getArgument('output-file'); $generator = new IconFontGenerator(); $output->writeln('reading font file from "' . $fontFile . '" ...'); $generator->generateFromFont(new Font(array(), file_get_contents($fontFile))); $output->writeln('writing CSS file to "' . $outputFile . '" ...'); file_put_contents($outputFile, $generator->getCss()); $output->getFormatter()->setStyle('success', new OutputFormatterStyle(null, null, array('bold', 'reverse'))); $output->writeln('<success>created CSS file successfully</success>'); }