[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Round-off errors in metrics & fontinst/finst status...



At 04:36 PM 97/12/17 -0800, Melissa O'Neill wrote:

>It'd also be useful to know just how much difference the current `round
>to an integer' process makes -- Berthold Horn did seem pretty outraged
>at the very idea, but are other people similarly upset by these
>inaccuracies. Is there a noticable difference?  

On the one hand it is not much of an issue, since only a few hundred
of the 90,000 Type 1 fonts have non-integer metrics Unfortuately these
include many of the fonts widely used in TeX.  I am for example 
unhappy about both TrueType and Type 1 versions of the CM fonts
that use rounded advance widths.  

How serious is this?  Well, the error of rounding obviously lies
uniformly distributed in the [-0.5, 0.5] range.  The average character
width in CMR10 is 586 (on the 1000 per em scale).  So the error is
of the order of +/- 0.1%   In 150mm we may see in the worst case
+/- 0.15mm.  Is that noticeable?  Probably.  Of course in the typical
situations lots of positive errors of varying size are added to lots of
negative errors of various size and so the overall error is less.  

The time it does add up systematically is when one is using the same
character repeatedly (as on a fill) or in a fixed width font.  Note that the
error can be worse than 0.15mm if the character is narrower than 586.

>Similarly, when vptovf
>and pltotf squark about how they had to round things, I'm left wondering
>if I should or shouldn't care... (and if I am supposed to care, just what
>it is I'm supposed to do).

What bothers me about these tools is that they are not `round trip safe'.
You can't keep on going from one form to the other and back again
and expect the numbers to be preserved.  They drift. Since I don't use 
these tools I am not certain about this, but I remember this being one 
of their annoying mis-features.

Berthold.

Berthold K.P. Horn, MIT AI Laboratory
Cmabridge, MA USA	mailto:bkph@ai.mit.edu