Ich habe einige Routinen zum Parsen von CFF-Schriftartdaten geschrieben.Zusätzliche Elemente auf Stapel beim Analysieren von CFF-Schriftartdaten
Gelegentlich erhalte ich bei der Verarbeitung eines Befehls hvcurveto
und vvcurveto
zusätzliche Elemente auf dem Stapel.
Für diese beiden Befehle der Stapeltiefe sollte entweder
4, 5, 12, 13, 20, 21, ...
oder
8, 9, 16, 17, 24, 25, ...
Für einige Schriftarten sein ich einen Stapel von 10. Es gibt immer einen zusätzlichen Parameter dort aus irgendeinem Grunde .
Zeigt dies an, dass ich bei der Verarbeitung der vorherigen Befehle einen Fehler gemacht habe - oder sind zusätzliche Befehle auf dem Stapel für CFF-Schriftarten üblich?
Die Kurvenbefehle befinden sich in einer Subroutine und der zusätzliche Parameter scheint in den Subr übergeben zu werden.
Es scheint, als ob die zusätzlichen Parameter vorhanden sind, wenn sich Tippbefehle in der Mitte des CFF-Streams befinden und nicht gleich zu Beginn.