def testSubsetting(self): "Tests TTFontFile and TTF parsing code" ttf = TTFontFile("Vera.ttf") subset = ttf.makeSubset([0x41, 0x42]) subset = TTFontFile(StringIO(subset), 0) for tag in ('cmap', 'head', 'hhea', 'hmtx', 'maxp', 'name', 'OS/2', 'post', 'cvt ', 'fpgm', 'glyf', 'loca', 'prep'): self.assert_(subset.get_table(tag)) subset.seek_table('loca') for n in range(4): pos = subset.read_ushort() # this is actually offset / 2 self.failIf( pos % 2 != 0, "glyph %d at +%d should be long aligned" % (n, pos * 2)) self.assertEquals(subset.name, "BitstreamVeraSans-Roman") self.assertEquals(subset.flags, FF_SYMBOLIC) self.assertEquals(subset.italicAngle, 0.0) self.assertNear(subset.ascent, 759.765625) self.assertNear(subset.descent, -240.234375) self.assertEquals(subset.capHeight, 759.765625) self.assertNear( subset.bbox, [-183.10546875, -235.83984375, 1287.109375, 928.22265625]) self.assertEquals(subset.stemV, 87)
def testSubsetting(self): "Tests TTFontFile and TTF parsing code" ttf = TTFontFile("luxiserif.ttf") subset = ttf.makeSubset([0x41, 0x42]) subset = TTFontFile(StringIO(subset), 0) for tag in ( "cmap", "head", "hhea", "hmtx", "maxp", "name", "OS/2", "post", "cvt ", "fpgm", "glyf", "loca", "prep", ): self.assert_(subset.get_table(tag)) subset.seek_table("loca") for n in range(4): pos = subset.read_ushort() # this is actually offset / 2 self.failIf(pos % 2 != 0, "glyph %d at +%d should be long aligned" % (n, pos * 2)) self.assertEquals(subset.name, "LuxiSerif") self.assertEquals(subset.flags, FF_SYMBOLIC) self.assertEquals(subset.italicAngle, 0.0) self.assertEquals(subset.ascent, 783) # FIXME: or 992? self.assertEquals(subset.descent, -206) # FIXME: or -210? self.assertEquals(subset.capHeight, 0) self.assertEquals(subset.bbox, [-204, -211, 983, 992]) self.assertEquals(subset.stemV, 87)
def testSubsetting(self): "Tests TTFontFile and TTF parsing code" ttf = TTFontFile("luxiserif.ttf") subset = ttf.makeSubset([0x41, 0x42]) subset = TTFontFile(StringIO(subset), 0) for tag in ('cmap', 'head', 'hhea', 'hmtx', 'maxp', 'name', 'OS/2', 'post', 'cvt ', 'fpgm', 'glyf', 'loca', 'prep'): self.assert_(subset.get_table(tag)) subset.seek_table('loca') for n in range(4): pos = subset.read_ushort() # this is actually offset / 2 self.failIf( pos % 2 != 0, "glyph %d at +%d should be long aligned" % (n, pos * 2)) self.assertEquals(subset.name, "LuxiSerif") self.assertEquals(subset.flags, FF_SYMBOLIC) self.assertEquals(subset.italicAngle, 0.0) self.assertNear(subset.ascent, 783.203125) # FIXME: or 992? self.assertNear(subset.descent, -205.078125) # FIXME: or -210? self.assertEquals(subset.capHeight, 0) self.assertNear(subset.bbox, [-203.125, -210.9375, 983.3984375, 992.67578125]) self.assertEquals(subset.stemV, 87)
def testSubsetting(self): "Tests TTFontFile and TTF parsing code" ttf = TTFontFile("Vera.ttf") subset = ttf.makeSubset([0x41, 0x42]) subset = TTFontFile(getBytesIO(subset), 0) for tag in ('cmap', 'head', 'hhea', 'hmtx', 'maxp', 'name', 'OS/2', 'post', 'cvt ', 'fpgm', 'glyf', 'loca', 'prep'): self.assert_(subset.get_table(tag)) subset.seek_table('loca') for n in range(4): pos = subset.read_ushort() # this is actually offset / 2 self.failIf(pos % 2 != 0, "glyph %d at +%d should be long aligned" % (n, pos * 2)) self.assertEquals(subset.name, b"BitstreamVeraSans-Roman") self.assertEquals(subset.flags, FF_SYMBOLIC) self.assertEquals(subset.italicAngle, 0.0) self.assertNear(subset.ascent,759.765625) self.assertNear(subset.descent,-240.234375) self.assertEquals(subset.capHeight, 759.765625) self.assertNear(subset.bbox, [-183.10546875, -235.83984375, 1287.109375, 928.22265625]) self.assertEquals(subset.stemV, 87)
def testSubsetting(self): "Tests TTFontFile and TTF parsing code" ttf = TTFontFile("luxiserif.ttf") subset = ttf.makeSubset([0x41, 0x42]) subset = TTFontFile(StringIO(subset), 0) for tag in ('cmap', 'head', 'hhea', 'hmtx', 'maxp', 'name', 'OS/2', 'post', 'cvt ', 'fpgm', 'glyf', 'loca', 'prep'): self.assert_(subset.get_table(tag)) subset.seek_table('loca') for n in range(4): pos = subset.read_ushort() # this is actually offset / 2 self.failIf(pos % 2 != 0, "glyph %d at +%d should be long aligned" % (n, pos * 2)) self.assertEquals(subset.name, "LuxiSerif") self.assertEquals(subset.flags, FF_SYMBOLIC) self.assertEquals(subset.italicAngle, 0.0) self.assertNear(subset.ascent,783.203125) # FIXME: or 992? self.assertNear(subset.descent,-205.078125) # FIXME: or -210? self.assertEquals(subset.capHeight, 0) self.assertNear(subset.bbox, [-203.125, -210.9375, 983.3984375, 992.67578125]) self.assertEquals(subset.stemV, 87)