Micro-optimize hmtx/vmtx loading

This commit is contained in:
Behdad Esfahbod 2014-05-14 00:30:02 -04:00
parent d56eebfa96
commit 37b7bad5b1

View File

@ -33,12 +33,13 @@ class table__h_m_t_x(DefaultTable.DefaultTable):
if data:
warnings.warn("too much 'hmtx'/'vmtx' table data")
self.metrics = {}
glyphOrder = ttFont.getGlyphOrder()
for i in range(numberOfMetrics):
glyphName = ttFont.getGlyphName(i)
glyphName = glyphOrder[i]
self.metrics[glyphName] = list(metrics[i*2:i*2+2])
lastAdvance = metrics[-2]
for i in range(numberOfSideBearings):
glyphName = ttFont.getGlyphName(i + numberOfMetrics)
glyphName = glyphOrder[i + numberOfMetrics]
self.metrics[glyphName] = [lastAdvance, sideBearings[i]]
def compile(self, ttFont):