12 January 2018: dvisvgm 2.3.1 has been released
  • Fixed the width of characters slanted by a mapfile entry (issue #82).
  • If ttfautohint fails for a font, dvisvgm now uses the unhinted font and prints a corresponding warning message.
  • Some code cleanup.
28 December 2017: dvisvgm 2.3 has been released

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 -V1 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

12 December 2017: dvisvgm 2.2.3 has been released
  • Updated the bundled brotli library to version 1.0.2.
  • Updated the bundled template library mpark::variant.
  • Fixed a memory issue that may occur in conjuntion with option --clipjoin.
  • Some test and code improvements.
17 November 2017: dvisvgm 2.2.2 has been released
  • 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.
13 November 2017: dvisvgm 2.2.1 has been released
  • Fixed a portability issue when building the manual page. (issue #72).
  • Fixed the incomplete conversion of the PostScript line width (issue #77).
  • Further code refactorings and improvements.
20 October 2017: dvisvgm 2.2 has been released
  • Added evaluation of pdf:pagesize specials.
  • 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 tx special.
  • Length values in dvisvgm specials now accept unit specifiers.
  • Added pdftex.map to default map files.
  • Fixed potential infinite loop after starting subprocesses (issue #68).
  • Files included with psfile are now also searched in the texmf tree if not present in the current working directory (issue #69).
  • Fixed transformation issue in computation of psfile position (issue #70).
  • Updated the bundled brotli, woff2, and xxHash libraries.
  • Several code refactorings and improvements.
20 February 2017: dvisvgm 2.1.3 has been released
  • Fixed build failures of the bundled FontForge library on Solaris 10.
  • Increased code portability.
12 February 2017: dvisvgm 2.1.2 has been released
  • 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 restrict keyword from the xxHash sources to avoid C++ compilation errors (xxHash issue 88).