This is a small feature release that adds optional experimental support for ttfautohint.
ttfautohint usually creates better results than the FontForge autohinter that dvisvgm uses by default if you
call it with option
--font-format=woff,autohint, for example. The fonts embedded in the following SVG file were
hinted with ttfautohint:
In order to build dvisvgm with ttfautohint support, you need the ttfautohint library and the corresponding header
files which are provided as of the latest version 1.8.1. A pre-built DLL of ttfautohint for Windows can be found
here. By default, ttfautohint support is completely disabled
and not available in dvisvgm. To enable it, add option
--with-ttfautohint to the
configure script, and optionally
specify the location of the ttfautohint development files, e.g.
--with-ttfautohint=/opt/ttfautohint. Depending on the
configuration results, the ttfautohint library is either directly linked to the dvisvgm binary or looked up dynamically
when running dvisvgm. If ttfautohint support is available, the list printed when calling dvisvgm with option
contains a corresponding entry, as shown in the box on the right.
$ dvisvgm -V1 dvisvgm 2.3 (x86_64-pc-linux) ----------------------------- brotli: 1.0.2 clipper: 6.2.1 fontforge: 20160721 freetype: 2.8.0 Ghostscript: 9.22 kpathsea: 6.2.2 potrace: 1.15 ttfautohint: 1.8.1 woff2: 1.0.1 xxhash: 0.6.4 zlib: 1.2.11
- Fixed a memory issue regarding font maps that could lead to segfaults (issue #79).
- Avoid scientific notation when printing floating point numbers.
- Minor code improvements.
- Added evaluation of
- Added evaluation of PDF hyperlink specials.
- Try to load Ghostscript dylib on Mac systems (patch by Toby Fleming, issue #66).
- Improved the TPIC special handler, added evaluation of the
- Length values in dvisvgm specials now accept unit specifiers.
pdftex.mapto default map files.
- Fixed potential infinite loop after starting subprocesses (issue #68).
- Files included with
psfileare now also searched in the texmf tree if not present in the current working directory (issue #69).
- Fixed transformation issue in computation of
psfileposition (issue #70).
- Updated the bundled brotli, woff2, and xxHash libraries.
- Several code refactorings and improvements.
- Fixed build failures of the bundled FontForge library on Solaris 10.
- Increased code portability.
- Bundled the googletest sources to simplify building and executing the tests.
- Fixed a couple of issues related to LLVM’s libc++ (thanks to Mojca Miklavec and Rasmus Larsen for their help to isolate the problems).
- Fixed some potential memory leaks.
- Removed the
restrictkeyword from the xxHash sources to avoid C++ compilation errors (xxHash issue 88).