29 August 2023: dvisvgm 3.1.1 has been released
- Added evaluation of optional dash prefixes to command-line option
--optimize
to exclude selected optimizer modules. - Fixed the invalid removal of clipping paths referenced in the
defs
section. - Fixed the automatic calls of optimizer module
remove-clippaths
. - Suppress warning messages about deprecated option
-dNEWPDF
introduced with Ghostscript 10.02.0 (issue #245). - Updated the bundled xxHash library to version 0.8.2.
- Fixed a few paragraphs in the manual page.
6 July 2023: dvisvgm 3.1 has been released
- Added the command-line option
--currentcolor
to replace a given color with CSS variablecurrentColor
(issue #214). - Added special
dvisvgm:currentcolor
to replace the currently active color with CSS variablecurrentColor
(issue #214). - Added special
dvisvgm:message
to print given texts to the console. - Added support for Omega Font Metric (OFM) files.
- Added a fallback mechanism for missing characters in OFM-based virtual fonts proposed by Takuji Tanaka (issue #241).
- Fixed the handling of whitespace characters in PDF file paths (issue #233).
- Fixed the vertical placement of “vertical fonts” in horizontal mode (issue #235).
- Fixed the parsing of floating point numbers which now prevents errors when using libc++ instead of libstdc++ (issue #240).
- Fixed potential segmentation faults triggered by missing font files (issue #241).
- Fixed a GLIBCXX assertion error occurred if dvisvgm is built with
_GLIBCXX_ASSERTIONS
enabled (issue #242). - Improved the handling of font subset prefixes in the new, mutool-based PDF handler (issue #242).
- Several minor code improvements.
10 March 2023: dvisvgm 3.0.4 has been released
- Fixed a bug that could prevent reading the output of subprocesses (issue #232).
- Removed the optional dependency on libcrypto (OpenSSL) due to the deprecation of its MD5 functions. Instead, the bundled MD5 function is always used now.
- Added TeX Live conditionals to the build system (patch by Karl Berry).
- Small code and manpage improvements.
21 February 2023: dvisvgm 3.0.3 has been released
This is a small bugfix release addressing these issues:
- Fixed resetting the character context that could lead to invalid character positions and properties (issue #227).
- Added missing
#include
directives required for GCC 13.
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 variableDVISVGM_PDF_PROC
to eithergs
ormutool
.
- 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
- 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.