[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [ft-devel] unexpected MIRP behaviour with pv*fv near 0
From: |
Jan Bruns |
Subject: |
Re: [ft-devel] unexpected MIRP behaviour with pv*fv near 0 |
Date: |
Sat, 10 Dec 2016 23:16:45 +0000 (UTC) |
User-agent: |
Pan/0.139 (Sexual Chocolate; GIT bf56508 git://git.gnome.org/pan2) |
Here's another one with MIRP, but easy to understand:
fv=pv=a-axis
refpoint.x = 448
workpoint.x = 471
(FT): MIRP moves workpoint to 384
(me): MIRP moves workpoint to 512
The move I'd expect doesn't change the order of the
points relative to the projection vector (and in this
case also is the shorter move).
instruction-code:
g0100: ed MIRP[mrB]
min-dist:64
cvt-ci:255
value (!) from control-tab: 12
round-state RTG
What probably happens:
bug
alt1 | alt2
initial distance: 23 | -23
near enough to cvt? yes | yes
new distance 12 | -12
engine compensation: 12 | -12
round to grid 0 | 0
min-dist -64 | 64
this is at least a bug that I have in my own code
I'm writing on.
A temporary result is zero, which doesn't have a sign,
so it's difficult to decide what a sign-flip would be
when applying the minimum-distance.
In this specific case, my code was in "luck" to
avoid the sign-flip, and behave just as a human user
would expect (avoid changing the order of points).
But the font seems to expect the wrong behaviour.
Seen with times new roman from windows7, glyph 42 at size 12:
ttdebug 42 12 ./times.ttf
at instruction g0100.
$ md5sum ./times.ttf
01d51f020433ac2343dc03c097aac735 ./times.ttf
Gruss
Jan Bruns