[cffLib] Use intRect() for FontBBox rounding
AFDKO seems to calculate bounds and side bearings in this manner.
This commit is contained in:
parent
5fd38a762e
commit
b22b59f730
@ -4,7 +4,7 @@ from __future__ import print_function, division, absolute_import
|
|||||||
from fontTools.misc.py23 import *
|
from fontTools.misc.py23 import *
|
||||||
from fontTools.misc import sstruct
|
from fontTools.misc import sstruct
|
||||||
from fontTools.misc import psCharStrings
|
from fontTools.misc import psCharStrings
|
||||||
from fontTools.misc.arrayTools import unionRect
|
from fontTools.misc.arrayTools import unionRect, intRect
|
||||||
from fontTools.misc.textTools import safeEval
|
from fontTools.misc.textTools import safeEval
|
||||||
from fontTools.ttLib import TTFont
|
from fontTools.ttLib import TTFont
|
||||||
from fontTools.ttLib.tables.otBase import OTTableWriter
|
from fontTools.ttLib.tables.otBase import OTTableWriter
|
||||||
@ -2331,7 +2331,7 @@ class TopDict(BaseDict):
|
|||||||
if bounds == initialBounds:
|
if bounds == initialBounds:
|
||||||
self.FontBBox = self.defaults['FontBBox'][:]
|
self.FontBBox = self.defaults['FontBBox'][:]
|
||||||
else:
|
else:
|
||||||
self.FontBBox = [round(v) for v in bounds]
|
self.FontBBox = list(intRect(bounds))
|
||||||
|
|
||||||
|
|
||||||
class FontDict(BaseDict):
|
class FontDict(BaseDict):
|
||||||
|
@ -19,8 +19,8 @@ class TopDictTest(unittest.TestCase):
|
|||||||
<CharString name="bar"><!-- [0, 0, 200, 200] -->
|
<CharString name="bar"><!-- [0, 0, 200, 200] -->
|
||||||
0 0 rmoveto 200 hlineto 200 vlineto -200 hlineto endchar
|
0 0 rmoveto 200 hlineto 200 vlineto -200 hlineto endchar
|
||||||
</CharString>
|
</CharString>
|
||||||
<CharString name="baz"><!-- [-55.5, -55.5, 55.5, 55.5] -->
|
<CharString name="baz"><!-- [-55.1, -55.1, 55.1, 55.1] -->
|
||||||
-55.5 -55.5 rmoveto 111 hlineto 111 vlineto -111 hlineto endchar
|
-55.1 -55.1 rmoveto 110.2 hlineto 110.2 vlineto -110.2 hlineto endchar
|
||||||
</CharString>
|
</CharString>
|
||||||
"""))
|
"""))
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user