def generate(self, saveDir): if not saveDir: return saveDir = saveDir[0] f = self.font.naked() glyphs = [g for g in f if not g.template] progress = ProgressWindow("Generating .png's", tickCount=len(glyphs), parentWindow=self.window) gridSize = int(getExtensionDefault(GRID_DEFAULTS_KEY, 50)) for g in glyphs: if g.unicode is not None: fileName = "%04X" %g.unicode else: fileName = glyphNameToFileName(g.name, f) path = os.path.join(saveDir, "%s.png" %fileName) image = g.getRepresentation("com.typemytype.pixelImageFactory", gridSize=gridSize) data = image.TIFFRepresentation() imageRep = NSBitmapImageRep.imageRepWithData_(data) pngData = imageRep.representationUsingType_properties_(NSPNGFileType, None) pngData.writeToFile_atomically_(path, False) progress.update() progress.close()
def testGlyphNameToFileName(glyphName, glyphSet): from robofab.glifLib import glyphNameToFileName return "test_" + glyphNameToFileName(glyphName, glyphSet)
def testDefaultFileNameScheme(self): self.assertEqual(glyphNameToFileName("a", None), "a.glif") self.assertEqual(glyphNameToFileName("A", None), "A_.glif") self.assertEqual(glyphNameToFileName("Aring", None), "Aring_.glif") self.assertEqual(glyphNameToFileName("F_A_B", None), "F__A__B_.glif") self.assertEqual(glyphNameToFileName("A.alt", None), "A_.alt.glif") self.assertEqual(glyphNameToFileName("A.Alt", None), "A_.Alt_.glif") self.assertEqual(glyphNameToFileName(".notdef", None), "_notdef.glif") self.assertEqual(glyphNameToFileName("T_H", None), "T__H_.glif") self.assertEqual(glyphNameToFileName("T_h", None), "T__h.glif") self.assertEqual(glyphNameToFileName("t_h", None), "t_h.glif") self.assertEqual(glyphNameToFileName('F_F_I', None), "F__F__I_.glif") self.assertEqual(glyphNameToFileName('f_f_i', None), "f_f_i.glif")
def myGlyphNameToFileName(glyphName, glyphSet): return "prefix" + glyphNameToFileName(glyphName, glyphSet)