30 January 2023: dvisvgm 3.0.2 has been released

This is a small maintenance release that addresses the following issues:

  • Fixed the computation of font sizes performed by the new PDF handler (issue #220).
  • Fixed the viewBox coordinates determined by the new PDF handler (issue #223).
  • Improved the detection of font names used in PDF files (issue #224).
  • Minor code improvements, increased compatibility with older GCC versions.
10 January 2023: dvisvgm 3.0.1 has been released

This is the first stable release of dvisvgm 3. An overview of the main changes and additions can be found in the announcement of pre-release version 3.0 below. Version 3.0.1 fixes several issues reported in the last weeks.

  • Added support for the 64-bit Ghostscript library in TeX Live (patch sent by Akira Kakuto).
  • MacTeX: explicitly lookup libgs in /usr/local/lib (issue #197).
  • Fixed the character spacing when processing XDV glyph arrays. (issue #198).
  • Fixed the invalid removal of non-redundant clipPath elements in some cases if option --optimize is present (issue #203).
  • Fixed the computation of the graphics extents printed to the console when using the preview package (issue #209).
  • Several improvements of the autotools scripts (thanks to Sam James).
  • Improved the processing of fonts performed by the new PDF handler.
17 October 2022: dvisvgm 3.0: Pre-release of new major version

dvisvgm 3.0 is a new major version of the utility that’s still considered beta status. While the new version doesn’t bring many obvious new features, essential core functionality has changed under the hood. The following list gives an overview of the most important changes and additions.

  • The previously bundled reduced FontForge library has been replaced with a dedicated font writer library used to create TrueType and WOFF files from the font data processed by dvisvgm.
  • A new PDF handler based on mutool has been added to retain dvisvgm’s PDF conversion functionality after the removal of Ghostscript’s old PDF interpreter announced for version 10.1.0.
    • The new handler supports all font options of dvisvgm, i.e. in contrast to the current Ghostscript-based PDF processor, fonts can not only be embedded as paths but also as SVG, TTF, WOFF, and WOFF2 fonts (depending on options --no-fonts and --font-format).
    • The new handler is still experimental and may contain bugs. Please report any issues via the issue tracker at GitHub.
    • Not all PDF features are supported – either because there is no simple equivalent in SVG or because mutool doesn’t provide means to access the corresponding data. For example, Type 3 fonts and color gradients fills are not yet processed by dvisvgm’s new PDF handler.
    • The former Ghostscript-based PDF handler is still available. It’s automatically invoked if dvisvgm finds a proper Ghostscript version. Otherwise, it looks for the mutool executable through the system’s search path and uses the new handler in case it’s found. The desired PDF handler can also be selected by setting environment variable DVISVGM_PDF_PROC to either gs or mutool.
  • Option --embed-bitmaps has been added to allow for embedding of external images referenced in DVI files into the generated SVG files. By default the SVG only contains a reference to the image.
  • The optional filters :even and :odd have been added to option --page which limit the given page ranges to even and odd page numbers respectively.

You can download the sources and pre-built binaries for MiKTeX from the project page at GitHub.

12 August 2022: dvisvgm 2.14 has been released
  • Added processing of SVG path elements inserted by “raw” specials in order to treat them similar to generated ones.
  • Added support for native font references lacking a file name suffix.
  • Improved the lookup of native fonts.
  • Improved the removal of redundant SVG group elements.
  • Fixed the conversion of empty glyphs to TTF/WOFF data.
  • Updated the bundled WOFF2 library.
20 April 2022: dvisvgm 2.13.4 has been released
  • Fixed the size of bounding boxes applied when converting multiple pages (issue #182).
  • Try to enable the old PDF interpreter when using Ghostscript >= 9.56.0. dvisvgm does not work with Ghostscript’s new PDF interpreter.
27 February 2022: dvisvgm 2.13.3 has been released
  • Added SVG optimizer module reassign-clippaths that searches for duplicate clipPath elements, removes them, and updates the clip-path references.
  • Replaced the method used to clip embedded EPS/PDF graphics that now usually results in faster rendering of the affected SVG sections.
  • Fixed a regression regarding transformations of embedded EPS/PDF graphics.
23 February 2022: dvisvgm 2.13.2 has been released

This small release improves the clipping of embedded EPS/PDF graphics (issue #176).

26 January 2022: dvisvgm 2.13.1 has been released
  • Enabled the evaluation of expression {?(...)} in special dvisvgm:rawdef (issue #175).
  • Fixed a regression concerning the positioning of PDF graphics with special pdffile (issue #174).
  • Fixed some build issues for older C++ compilers.