This information is obsolete, as the described patch, in modified form, is now part of pdftex-1.20a.
For description and changelog please see file 00-README-AVL.TXT included.
This is just an informal write-up of my private/spare-time fiddling with pdfTeX (it's for fun). The text below is only a rough and partially outdated version. Current info you find in the 00-README-AVL.TXT in the .tgz bundles above.
With this patch the fm_tab array in pdfTeX is replaced by two AVL trees, one with sort criteria tfm_name and expand, and the other with sort criteria ps_name, slant, and extend. Both trees access the same fm_entry data structures. The goal was to speed up the mapfile reading and font lookup, and to have a modern method to read/overwrite/delete fm_entry entries.
Details see 00-README-AVL.TXT.
Snapshot of the patch: See the top of the page. Beware, the code may be buggy, there are loose ends in. The patch touches several source files, as the fm_tab array is widely used in the pdftex system.
The patch seems to work as long as one does nothing very special.
Apparently the pdftex.map file entries from teTeX-2.0.2
are scanned correctly, and the provided fonts can be used;
also the ones with ExtendFont and SlantFont parameter.
The HZ-algorithm runs with MM fonts and with Type1 fonts.
PDF files with HZ fonts can be embedded;
the expanded fonts are found,
when a proper
Help, advice, critics greatly welcome! Have fun!
This page first put online 23 February 2003.