History
Background | What Is TTF2PT1 | History | Download | CVS | Credits | Todo
December 31st 2003 v 3.4.4
Packaged by Sergey Babkin

New Features

  • Improved the auto-vectoring (-OV) alrogithm.
  • Allow use of any encoding table of format 4 in the ttf parser.
  • Take the first available format 4 encoding table if no known table is found in the ttf parser.
  • The ttf parser lists the available encodings if no supported encoding table is found. This can be used to list the encodings in any font by specifying a bogus explicit PID/EID, such as with option -l plane+pid=50,eid=50.

Bug fixes:

  • Fix to build all the features on Windows MS C++, by Tomoo Amano.
  • Fix for a null pointer in the encodings, bad inner loop variable.
  • Unified the parsing of font name strings and improved the checks against invalid characters.
December 2nd 2002 v 3.4.3
Packaged by Sergey Babkin

New Features

  • scripts/forceiso got an optional argument to select the format of the names for glyphs without standard Latin-1 names.

Bug fixes:

  • Changed the glyph names in scripts/forceiso to match those in ttf2pt1.
  • Included the missing directory app/TeX.
August 30th 2002 v 3.4.2
Packaged by Sergey Babkin

New Features

  • New map for T2A_compat encoding (for Cyrillic LaTeX) by Mikhail Umorin.
  • Scripts supporting font conversion for CJK-LaTeX, by Mike Fabian from SuSE.

Bug fixes:

  • Explicit owner/group/permissions are used to install directories.
  • In scripts/convert fixed the addition of encoding name to the font name for the external encoding maps, was missing "/" at the start.
  • Fixed the divergence between two copies of UniqueID.
  • Fixed the recovery after defective empty contours.
June 13th 2002 v 3.4.1
Packaged by Sergey Babkin

New Features

  • Added Autotrace support for the bitmap fonts (-OZ). It's horrible.
  • Added vectorization of bitmap fonts (-OV) - functionally the same thing as autotrace but home-grown. Works mostly decently but still with large space for impprovement.
  • Relaxed the conditions for warnings about long glyphs.

Bug fixes:

  • Fix by Rob Kolstad for a crash in the new outline smoothing code (on small thin contours) and diagnostic for another crash.
  • Fix by Holger Huesing for a crash on degenerate contours.
  • Fix for bitmaps of zero dimensions.
  • The BDF reader does not fail on redefintion of the properties.
  • Fix for reading of BDF glyphs with 0 size.
  • Fix for a hang when guessing the boldness of some fonts.
  • Fix by Adriano Konzen for scaling coefficients in composite glyphs.
November 24th 2001 v 3.4.0
Packaged by Sergey Babkin

New Features

  • Parser for the BDF bitmap fonts.
  • Vastly improved the smoothing of the outlines.
  • The options are saved as a comment in the output file.
  • New script other/showdf for visual comparison of the fonts.
  • New option -G to select the file types to generate.
  • Creation of the dvips encoding files (by Rigel).
  • More glyphs in the Chinese maps (by Rigel).
  • Made the assignment of ISO8859/1 glyph names to the glyphs in the fonts without PostScript names in them dependent on the original encoding: no change for the 8-bit encodings, for the Unicode encoding the names are assigned to the glyph with the codes 0-255 in Unicode, and for the other 16-bit encodings the 8859/1 names are not assigned at all.

Bug fixes:

  • Added a check for spaces in the PostScript font name in the FreeType parser.
  • Made "-" a valid character in the glyph names.
  • Fixed handling of the Unicode names returned by FreeType, though not perfectly.
  • Changed the build for FreeType-2.0.4.
  • Fixed the handling and printing of bad glyph names.
  • Fixed the bug with duplicated glyph names when more than 256 glyphs are extracted from a font that has no PostScript glyph names defined.
  • Added ability to map a glyph to more than one code when unisng the native parser (-pttf).
September 12th 2001 v 3.3.5
Packaged by Sergey Babkin

Bug fixes:

  • Fixed the scaling of Ascender and Descender in the AFM file.
  • Fixed the brekage of "-l adobestd".
June 4th 2001 v 3.3.4
Packaged by Sergey Babkin

New Features

  • Cyrillic (full set of glyphs) language tables (by Zvezdan Petkovic). Now the languages "russian" and "bulgarian" are provided for compatibility only, use the common language "cyrillic" instead.
  • More information in FONTS on using Cyrillic fonts with Netscape (by Zvezdan Petkovic)
  • In the Netscape print filter added removal of the clipping path command: otherwise Netscape tends to cut off a large piece of the rightmost column of the tables.
  • One more script for printing from Netscape (by Zvezdan Petkovic).
  • Added selection of the base TTF encoding by pid/eid in the external maps.
  • Improved the recognition of substituted stems for intersecting contours.
  • Improved the substituted hints to make the horizontal positioning of the points at the same height more uniform at small pixel sizes.
  • Made the algorithm for calculation of standard stem widths more selective.
  • Added link to the GnuWin32 project.

Bug fixes:

  • TH: Print out metrics of un-encoded glyphs even without "-a" option.
  • Added missing "/" in Fontmap generation in convert (by Zvezdan Petkovic).
  • Removed unneccessary "\n" in messages in x2gs.
  • Removed the broken overoptimisation of "0 0 rmoveto".
  • Removed the useless warnings about multiple codes for a glyph.
  • Changed the FreeType2 include directory in the Makefile to match the FreeType's default.
March 4th 2001 v 3.3.3
Packaged by Sergey Babkin

New Features

  • TH: Added printing of front-end parser in the header of the font file.
  • Tested build with FreeType 2.0 Release.

Bug fixes:

  • Changed the installation script which on some versions of bash copied all files into the share directory.
  • Fixed the close sequences of html2man comments in the HTML files, now they should display correctly with lynx.
  • Restored the ability to include un-encoded characters into the customised maps (those with codes over 255).
  • Fixed the Unicode mapping of the Cyrillic letters "YO" and "yo" (by Yuri Shemanin).
  • Fixed the spurious aborts when the conversion-by-plane function gets called for auto-guessing of encoding.
November 20th 2000 v 3.3.2
Packaged by Sergey Babkin

New Features

  • Added generation of man pages.
  • Added "make install" and "make uninstall".
  • Added language option "-l plane".
  • In other/showg added better support of comparison files:
    • printing of the comparison file legend;
    • guessing of missing glyph names in a comparison file by code;
    • bounding boxes of all comparison files are used for page layout.
  • Added ability to use external t1asm instead of compiling it in.
  • Renamed the fonts installation guide from INSTALL*html to FONTS*html to avoid confusion with installation of ttf2pt1 itself.

Bug fixes:

  • Removed erroneous extra fclose(pfa_file).
  • Fixed random memory corruption that manifested with crash on Linux when converting fonts not containing glyph names.
  • Removed from the output file the comments that confused dvips. Changed other/showg to work without them.
  • In other/showg added better checks for missing glyphs, now it gives warnings about them and the output file does not crash PostScript.

Other:

  • ttf2pfa is no longer included, people interested in history should look for it in the older versions.
October 22nd 2000 v 3.3.1
Packaged by Sergey Babkin

New Features

  • Added front-end parser based on the FreeType-2 library. See Makefile for build instructions.
  • Changed the handling of encodings to accomodate the FreeType model.
  • Further cleaned up the front-end parser interface.

Bug fixes:

  • Fixed a bug that caused core dump on Alpha machines.
  • Fixed a bug in the outline smoothing that occasionally caused core dump.
  • Cleaned up warnings from picky compilers
  • Fixed more bugs in the Windows port (by Stefan Bauer).
  • Fixed the RPM spec file (suggested by Brian Armstrong).
September 22nd 2000 v 3.3.0
Packaged by Sergey Babkin

New Features

  • Converted most of the outlines' processing to floating point arithmetic.
  • Added splitting of curves crossing the quadrant boundaries (no gross damage is done any more to the Marvosym font and others like it).
  • Added modular interface for front-end font parsers and option to control their selection at run time.
  • Grouped the outline processing control options into one to reduce the options namespace pollution.
  • Thomas moved the Chinese maps into a separate module, chinese-maps.
  • Thomas added option -V to print version number. In addition, the version number is put in the header of the font file.
  • Added long option names (suggested by Thomas).
  • Added support for multi-level composite glyphs.
  • TH: Made <fontname> command-line argument optional; default to <ttf-file> with suffix replaced.
  • In other/showg added more ways to specify glyphs and the comparison option.

Bug fixes:

  • Fixed the VC++ batch file, added batch file for Cygnus GCC on Windows.
  • Removed parentheses from the Version string in AFM files because it does not help StarOffice anyway. StarOffice 5.2 has been reported to have this bug fixed. Added paragraph on StarOffice in INSTALL.html.
  • Made messages on the '?' option parameter more meaningful (by Johan Vromans).
  • Changed the latin1 encoding table to include the Euro sign, Z and z with caron (by Thomas Henlich).
  • Improved the smoothing code which occasionally had problems with joining curves. Also fixed a few minor bugs in it.
May 23rd 2000 v 3.22
Packaged by Sergey Babkin

New Features

  • Included windows support by Frank Siegert (somewhat amended)
  • Added control over verbosity of warnings.
  • Added arguments and initialization functions to the language translation routines.
  • Added support of planes determined by arguments to the external maps.
  • Added compact external maps format (primarily for Eastern fonts).
  • Added external maps for Chinese GBK and Big5 encodings (converted from ttf2pfb) as well as maps for other Chinese encodings by Wang Lei.
  • Added the idea of buckets to speed up the search in external maps.
  • Changed the grouping algorithm for substituted hints: now it creates a bit bigger files but requires smaller hint stack when being rendered.
  • Added maximal limit of hint stack depth, glyphs requiring bigger stack get generation of substituted hints disabled. This makes substituted hints safe to use, no more lost glyphs due to hint stack overflow.
  • Added the font dump program other/dumpf.
  • Changed the testing HTML generator other/lst.pl to use tables.
  • Added debugging script other/cntstems.pl to count required hint stack depth for the glyphs.

Bug fixes:

  • Fixed printing of UID in script/trans. Changed the auto-generated UID to be in range 4000000-4999999 which is reserved by Adobe for private use.
  • Fixed handling of "cleartomark" in built-in t1asm.
  • Added handling of "can't happen" case in straighten() routine which actually happened on strange fonts and caused failure on assertion.
  • Made it always include the glyph .notdef in the resulting font.
  • Placed the version string in AFM file in parentheses, hopefully that would fix the problem with StarOffice.
  • Improved the smoothing code which occasionally had problems with joining curves.
February 28th 2000 v 3.21
Submitted by Sergey Babkin

New Features

  • New Unicode map format with glyph names, by Petr Titera.
  • Option to force the Unicode encoding by Petr Titera (I changed it to work on any MS encoding, not only Symbol).
  • Slightly tweaked the calculation of hints, should be better now.

Bug fixes:

  • The unicode-sample.map with description of the map formats was lost in the release process, restored and enhanced.
  • Renamed the table ISOLatin1Encoding to Fmt3Encoding to reflect the way it is used. Saved the original one for reference purposes. In the new table renamed "quoteright" to "quotesingle" as Thomas Henlich suggested (and he was right).
  • In the ISOLatinEncoding table renamed the glyph "grave" at octal 0140 to "quoteleft", "quotesingle" at octal 047 to "quoteright" to conform to the standard (as suggested by Martin Trautner).
  • Fixed bug in scripts/trans that corrupted the UniqueID record in the translated fonts.
  • Fixed bug in interaction of substituted hints with BlueZones. Now the fonts with hint substitution seem to be always at least not worse than without it (well, when they fit in the X11 file size limit).
January 15th 2000 v 3.2
Submitted by Sergey Babkin: combined changes with the changes by Thomas Henlich. The result deserves a not-so-minor version increase.

New Features

  • Support of the external Unicode re-encoding maps (by Thomas).
  • Support for inclusion of all the glyphs from the source file into the resulting file (inspired by Thomas but I re-implemented it to remove the limitation of his implementation: not more than 1024 glyphs).
  • The hints substitution. It's an experimental feature yet and needs further work.
  • Support for UniqueID and its auto-generation.
  • Support for the name-based conversions from Unicode in general and the adobestd "language" in particular.
  • Started the split of the source code into multiple files. This needs more work to do it in a cleaner way.
  • Better framework for the debugging printout in the converter.
  • Utilities to install the fonts in Netscape Navigator/Communicator 4.x.
  • Patches for bigger font files in the X11 rasterizer.
  • Linux RPM spec-file (by Johan Vromans).
  • Added the COPYRIGHT file (BSD-style, as we discussed on the mailing list earlier) and the CHANGES file.
  • Creation of the .pfb files from the convert script.
  • Changed the .notdef-s in the built-in ISOLatin1Encoding table to some valid names (by Thomas). Thomas also suggested replacing `quoteright' by `quotesingle' but this seems to be against the Adobe ISOLatin1 table.
  • New aliases windows-1251 and cp-866 for the Russian encodings: those are expected by Netscape navigator.
  • The font comparison program other/cmpf.
  • The "magnifying glass" program for glyph outlines: other/showg.
  • Other updates of the tools in the `other' subdirectory.
  • Added a link to T1LIB in README.
  • A few new options in convert.cfg.

Bug fixes:

  • A bug in the outline smoothing code that corrupted some of the fonts (for example, Microsoft Verdana).
  • Added explicit `cleartomark' to the end of file, this seems to be compatible with both old and new version of t1asm (suggested by Thomas).
  • Added the FontEncoding statement to the AFM files (techincally this was not a bug because this statement is optional but some programs want it).
  • A coredump when the converter tried to print a warning (rather ironically) about a weird glyph width.
  • Changed the underscores in the font names to dashes (this has been proposed long time ago by someone, can't find now by whom - probably by Thomas henlich or Johan Vromans).
  • No more glyph names of font names staring with a digit.
  • The names of the fonts in font and AFM files are now the same as in the generated Ghostscript Fontmap file. Warning: the names in Fontmap have been changed.
  • The forceiso script does not corrupt the character and kerning pairs counts any more, and is optional at all.
  • Fix for a loop going to 254 instead of 255 (by Thomas).
  • Added ':' in the font header (by Thomas).
  • A coredump when wrong language name is given (this was also fixed by Thomas but I noticed it too late, after I already fixed it by myself).
  • Fixed the links to the Adobe documents in README.
October 18th 1999 v 3.13
Submitted by Sergey Babkin
  • Latin2 language support by Szalay Tamas.
  • Fix for the bug that made possible calls of malloc(0).
  • Refinement of the option -w to prevent extra wide spacing
  • New option -v for automatic re-scaling based on the vertical size of the font
  • Updated docs
  • Changed the code to use getopt() instead of a home-made version of it.
October 2nd 1999 v 3.12
Submitted by Sergey Babkin
  • (FINALLY!!!) a correct fix for the infamous Red Hat 6.0 stdio "feature",
  • a number of little bugs discovered by a picky SGI compiler (well, maybe some day I'll try to run it through the UnixWare lint and see what happens),
  • a diagnostic message about the empty encodings in the convert script was made less cryptic and a bug in the awk sub-script was fixed,
  • the .afm creation code now considers the option -t. Features:
  • added support for the Bulgarian language (actually, for now just an alias of Russian),
  • added option -w that tries to make sure that the character widths are not too narrow,
  • added the concept of aliased encodings,
  • now the conversion scripts create and install the .afm files too,
  • the conversion script removes the intermediate files after installation,
  • added tunables to the conversion script,
  • installation of the Ghostscript fonts can now be done automatically together with the X11 fonts. Updated the docs.
May 24th 1999 v 3.11
Submitted by Sergey Babkin
  • It includes the Turkish (Latin5, ISO8859/9) language support by Turgut Uyar and Baltic (ISO8859/4) languages support by Rihardas Hepas.
  • Also the installation script got updated: the configuration parameters are moved to a separate file and the generated fonts.dir files should now be compatible with Xfsft.
March 28th 1999
From Sergey Babkin
  • Improved the interaction of the character-level hints and font-level hints
March 6th 1999
From Sergey Babkin
  • Added HTML documents
February 14th 1999
From Sergey Babkin
  • Adds ability to print the .afm file instead of the font to STDOUT
  • Removes the force-fixed option that proved to be troublesome and adds the guessing of the /ForceBold parameter that proved to be useful.
  • Updates to the README file.
December 11th, 1998
From Andrew Weeks
  • Versions of handle_post and handle_cmap that deal with some problems with buggy fonts.
  • Added option (passed to t1asm) to create a compressed binary version of the font (A PFB file).
  • Minor Bug Fixes.
December 5th, 1998
From Thomas Henlich
  • Integration of AFM file creation.
November 15th, 1998
From Serge Babkin
  • fixed a couple of bugs.
  • added the auto-calculation of the italic angle.
October 18, 1998
From Serge Babkin
  • improved (although still not perfect) handling of scaling in composite glyphs
  • scaling of fonts to 1000x1000 M-square required by Type1 standard
  • printing out the contours in reverse direction, because TTF directions are different from Type1 ones (that was the major reason why the fonts generated by version 2.2 were rendered so badly in small sizes)
  • automatic correction of outlines to make them more smooth (to correct both rounding errors introduced during conversion and present in the original font)
  • automatic generation of hints (still has lots of space for improvement)
  • automatic generation of BlueValues etc.
June 22nd, 1998
From Thomas Henlich
  • "width" should be "short int" because otherwise: characters with negative widths (e.g. -4) become *very* wide (65532)
  • the number of /CharStrings is numglyphs and not numglyphs+1
February 13th, 1998
  • An original Bug Reported by Frank, which was just incorrect syntax in the Type 1 header, managed to creep back into the Feb 04 Version. This has been Fixed in the Feb 13 Version.
February 4th, 1998
From Andrew Weeks
  • There is a problem with accented characters. The accents are appearing in the wrong places.
  • A workaround was implemented in ttf2pfa by altering the matrix. I suspect I will have to calculate the correct values, as matrix ops are probably not allowed in Type 1 format.
TTF 2 PT1 Modification by Mark Heath <mheath@netspace.net.au>
Background | What Is TTF2PT1 | History | Download | CVS | Credits | Todo