TTFont: don't load all tables upon opening even with lazy=False
one has to call TTFont.ensureDecompiled to load everything
This commit is contained in:
parent
795bccd966
commit
46f33357cb
@ -129,7 +129,7 @@ class TTFont(object):
|
|||||||
closeStream = False
|
closeStream = False
|
||||||
file.seek(0)
|
file.seek(0)
|
||||||
|
|
||||||
if self.lazy is None:
|
if not self.lazy:
|
||||||
# read input file in memory and wrap a stream around it to allow overwriting
|
# read input file in memory and wrap a stream around it to allow overwriting
|
||||||
file.seek(0)
|
file.seek(0)
|
||||||
tmp = BytesIO(file.read())
|
tmp = BytesIO(file.read())
|
||||||
@ -139,19 +139,12 @@ class TTFont(object):
|
|||||||
if closeStream:
|
if closeStream:
|
||||||
file.close()
|
file.close()
|
||||||
file = tmp
|
file = tmp
|
||||||
|
|
||||||
self._tableCache = _tableCache
|
self._tableCache = _tableCache
|
||||||
self.reader = SFNTReader(file, checkChecksums, fontNumber=fontNumber)
|
self.reader = SFNTReader(file, checkChecksums, fontNumber=fontNumber)
|
||||||
self.sfntVersion = self.reader.sfntVersion
|
self.sfntVersion = self.reader.sfntVersion
|
||||||
self.flavor = self.reader.flavor
|
self.flavor = self.reader.flavor
|
||||||
self.flavorData = self.reader.flavorData
|
self.flavorData = self.reader.flavorData
|
||||||
|
|
||||||
if self.lazy is False:
|
|
||||||
# if lazy=False immediately load all the tables
|
|
||||||
self.ensureDecompiled()
|
|
||||||
if closeStream:
|
|
||||||
file.close()
|
|
||||||
|
|
||||||
def __enter__(self):
|
def __enter__(self):
|
||||||
return self
|
return self
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user