[cffLib.specializer] Implement rlinecurve and rcurveline

This commit is contained in:
Behdad Esfahbod 2017-05-05 17:05:04 -06:00
parent a3c1ebbfce
commit 86a398b5c3

View File

@ -368,8 +368,14 @@ def specializeCommands(commands,
new_op = None
# Merge logic...
if op1 in {'rlineto', 'rrcurveto'} and op1 == op2:
new_op = op1
if {op1, op2} <= {'rlineto', 'rrcurveto'}:
if op1 == op2:
new_op = op1
else:
if op2 == 'rrcurveto' and len(args2) == 6:
new_op = 'rlinecurve'
elif len(args2) == 2:
new_op = 'rcurveline'
elif {op1, op2} == {'vlineto', 'hlineto'}:
new_op = op1
# TODO curves