Source code for fontTools.ttLib.tables.F_F_T_M_

from fontTools.misc import sstruct
from fontTools.misc.textTools import safeEval
from fontTools.misc.timeTools import timestampFromString, timestampToString
from . import DefaultTable

FFTMFormat = """
		>	# big endian
		version:        I
		FFTimeStamp:    Q
		sourceCreated:  Q
		sourceModified: Q
"""


[docs] class table_F_F_T_M_(DefaultTable.DefaultTable):
[docs] def decompile(self, data, ttFont): dummy, rest = sstruct.unpack2(FFTMFormat, data, self)
[docs] def compile(self, ttFont): data = sstruct.pack(FFTMFormat, self) return data
[docs] def toXML(self, writer, ttFont): writer.comment( "FontForge's timestamp, font source creation and modification dates" ) writer.newline() formatstring, names, fixes = sstruct.getformat(FFTMFormat) for name in names: value = getattr(self, name) if name in ("FFTimeStamp", "sourceCreated", "sourceModified"): value = timestampToString(value) writer.simpletag(name, value=value) writer.newline()
[docs] def fromXML(self, name, attrs, content, ttFont): value = attrs["value"] if name in ("FFTimeStamp", "sourceCreated", "sourceModified"): value = timestampFromString(value) else: value = safeEval(value) setattr(self, name, value)