Ejemplo n.º 1
0
	def test_decompileTupleVariationStore_empty(self):
		self.assertEqual(
			decompileTupleVariationStore(tableTag="gvar", axisTags=[],
			                             tupleVariationCount=0, pointCount=5,
			                             sharedTuples=[],
			                             data=b"", pos=4, dataPos=4),
			[])
Ejemplo n.º 2
0
 def test_compileTupleVariationStore_roundTrip_gvar(self):
     deltas = [(1, 1), (2, 2), (3, 3), (4, 4)]
     variations = [
         TupleVariation({
             "wght": (0.5, 1.0, 1.0),
             "wdth": (1.0, 1.0, 1.0)
         }, deltas),
         TupleVariation({
             "wght": (1.0, 1.0, 1.0),
             "wdth": (1.0, 1.0, 1.0)
         }, deltas)
     ]
     tupleVariationCount, tuples, data = compileTupleVariationStore(
         variations,
         pointCount=4,
         axisTags=["wght", "wdth"],
         sharedTupleIndices={})
     self.assertEqual(
         decompileTupleVariationStore("gvar", ["wght", "wdth"],
                                      tupleVariationCount,
                                      pointCount=4,
                                      sharedTuples={},
                                      data=(tuples + data),
                                      pos=0,
                                      dataPos=len(tuples)), variations)
Ejemplo n.º 3
0
 def test_decompileTupleVariationStore_empty(self):
     self.assertEqual(
         decompileTupleVariationStore(tableTag="gvar",
                                      axisTags=[],
                                      tupleVariationCount=0,
                                      pointCount=5,
                                      sharedTuples=[],
                                      data=b"",
                                      pos=4,
                                      dataPos=4), [])
Ejemplo n.º 4
0
	def test_decompileTupleVariationStore_Skia_I(self):
		tvar = decompileTupleVariationStore(
			tableTag="gvar", axisTags=["wght", "wdth"],
			tupleVariationCount=8, pointCount=18,
			sharedTuples=SKIA_GVAR_SHARED_TUPLES,
			data=SKIA_GVAR_I_DATA, pos=4, dataPos=36)
		self.assertEqual(len(tvar), 8)
		self.assertEqual(tvar[0].axes, {"wght": (0.0, 1.0, 1.0)})
		self.assertEqual(
			" ".join(["%d,%d" % c for c in tvar[0].coordinates]),
			"257,0 -127,0 -128,58 -130,90 -130,62 -130,67 -130,32 -127,0 "
			"257,0 259,14 260,64 260,21 260,69 258,124 0,0 130,0 0,0 0,0")
Ejemplo n.º 5
0
	def test_decompileTupleVariationStore_Skia_I(self):
		tvar = decompileTupleVariationStore(
			tableTag="gvar", axisTags=["wght", "wdth"],
			tupleVariationCount=8, pointCount=18,
			sharedTuples=SKIA_GVAR_SHARED_TUPLES,
			data=SKIA_GVAR_I_DATA, pos=4, dataPos=36)
		self.assertEqual(len(tvar), 8)
		self.assertEqual(tvar[0].axes, {"wght": (0.0, 1.0, 1.0)})
		self.assertEqual(
			" ".join(["%d,%d" % c for c in tvar[0].coordinates]),
			"257,0 -127,0 -128,58 -130,90 -130,62 -130,67 -130,32 -127,0 "
			"257,0 259,14 260,64 260,21 260,69 258,124 0,0 130,0 0,0 0,0")
Ejemplo n.º 6
0
 def decompile(self, data, ttFont):
     axisTags = [axis.axisTag for axis in ttFont["fvar"].axes]
     header = {}
     sstruct.unpack(CVAR_HEADER_FORMAT, data[0:CVAR_HEADER_SIZE], header)
     self.majorVersion = header["majorVersion"]
     self.minorVersion = header["minorVersion"]
     assert self.majorVersion == 1, self.majorVersion
     self.variations = decompileTupleVariationStore(
         tableTag=self.tableTag, axisTags=axisTags,
         tupleVariationCount=header["tupleVariationCount"],
         pointCount=len(ttFont["cvt "].values), sharedTuples=None,
         data=data, pos=CVAR_HEADER_SIZE, dataPos=header["offsetToData"])
Ejemplo n.º 7
0
 def decompile(self, data, ttFont):
     axisTags = [axis.axisTag for axis in ttFont["fvar"].axes]
     header = {}
     sstruct.unpack(CVAR_HEADER_FORMAT, data[0:CVAR_HEADER_SIZE], header)
     self.majorVersion = header["majorVersion"]
     self.minorVersion = header["minorVersion"]
     assert self.majorVersion == 1, self.majorVersion
     self.variations = decompileTupleVariationStore(
         tableTag=self.tableTag,
         axisTags=axisTags,
         tupleVariationCount=header["tupleVariationCount"],
         pointCount=len(ttFont["cvt "].values),
         sharedTuples=None,
         data=data,
         pos=CVAR_HEADER_SIZE,
         dataPos=header["offsetToData"])
Ejemplo n.º 8
0
	def test_compileTupleVariationStore_roundTrip_gvar(self):
		deltas = [(1,1), (2,2), (3,3), (4,4)]
		variations = [
			TupleVariation({"wght": (0.5, 1.0, 1.0), "wdth": (1.0, 1.0, 1.0)},
			               deltas),
			TupleVariation({"wght": (1.0, 1.0, 1.0), "wdth": (1.0, 1.0, 1.0)},
			               deltas)
		]
		tupleVariationCount, tuples, data = compileTupleVariationStore(
			variations, pointCount=4, axisTags=["wght", "wdth"],
			sharedTupleIndices={})
		self.assertEqual(
			decompileTupleVariationStore("gvar", ["wght", "wdth"],
			                             tupleVariationCount, pointCount=4,
			                             sharedTuples={}, data=(tuples + data),
			                             pos=0, dataPos=len(tuples)),
            variations)