Intolerable difference in glyph width: font=vnbx12

Reinhard Kotucha reinhard.kotucha at
Sat Nov 13 22:03:59 CET 2021

On 2021-11-13 at 13:36:33 -0500, Tom Kacvinsky wrote:

 > On Sat, Oct 23, 2021 at 5:07 AM Werner LEMBERG <wl at> wrote:
 > >
 > > >  > Yes.  Ideally, the values are rational approximations, similar to
 > > >  > what is done in the cmsuper fonts, for example
 > > >  >
 > > >  >   41 4913 10 div hsbw
 > > >
 > > > But maybe we can reduce the rounding errors even more if we try with
 > > > other denominators than 10 for each glyph and choose that which
 > > > matches best.
 > >
 > > Yes.  Note, however, that denominator 10 *is* the best approximation
 > > for the decimal value you have shown, even if you base everything on a
 > > continued fraction.
 > >
 > So I started on this today and I have forgotten the format of PL files.  I
 > see the CHARACTER  tokens, which have only a character code, not
 > a glyph name, so I need to sort that out between the PFB and TFM.  OK,
 > no problem there.  What is confusing is where does one get the horizontal
 > side bearing (hsbw in Type parlance) from the PL file?  I don't see that, I
 > only see CHARHT and CHARWD.

Hi Tom,
there are no hsbw values in tfm files.  They are derived from CHARWD
and converted from pt to bp.  At least this is what I assumed.

But there is a problem: The hsbw values in the Type 1 fonts seem to be
CHARWD values rounded to integers without being scaled from pt to bp.

This looks wrong to me but what confuses me is that all TeX engines
provide correct output though.

I hesitate to change anything before I groked completely what's
actually happening.


Reinhard Kotucha                            Phone: +49-511-3373112
Marschnerstr. 25
D-30167 Hannover                    mailto:reinhard.kotucha at

More information about the tex-live mailing list.