#!/usr/bin/env python import os import subprocess path = "/Users/charles.himmer/Sites/photo/fonts" def generateCss(fontName, fileName): print """ @font-face { font-family: '%s'; src: url("fonts/eot/%s.eot"); /* FOR IEs */ src: local('%s'), url('fonts/%s.ttf') format('truetype'); /* for other web browsers */ } .font-%s{font-family:'%s';} """ % (fontName, fileName, fontName, fileName, fileName, fontName) def generateSelect(fontName, fileName): print "'',".format(fileName, fontName) for file in os.listdir(path): fileName, fileExt = os.path.splitext(file) if(fileExt.lower() == '.ttf'): ttfFile = "%s/%s" % (path, file) eotFile = '%s/eot/%s.eot' % (path, fileName) #make an .eot version if it doesn't exist if os.path.exists(eotFile) is False: #print "converting %s to %s\n" % (ttfFile, eotFile) subprocess.check_call('ttf2eot < ' + ttfFile + ' > ' + eotFile, shell=True) # print out css needed to use font in the browser fontName = fileName.replace('_',' ') generateCss(fontName, fileName) #generateSelect(fontName, fileName)