Releases: mgieseki/dvisvgm
Releases · mgieseki/dvisvgm
dvisvgm 2.8.1
- Added SVG optimizer module
simplify-text
to move common attributes fromtspan
elements to the enclosingtext
element. Redundanttspan
elements are removed afterwards. - Added support for PS operator
nulldevice
. - Absolute paths given in special
psfile
are now retained in the SVG file when referencing external image files. - Some code refactorings.
dvisvgm 2.8
- Added support for JPEG, PNG, PDF, and SVG files to special
psfile
. - Added support for Ghostscript 9.50 which introduced incompatible changes regarding option
-dSAFER
. Due to security reasonsSAFER
is now active by default and therefore conflicts withDELAYBIND
andWRITESYSTEMDICT
. Since dvisvgm requires the latter two to work correctly, Ghostscript must now be called with-dDELAYSAFER
. Otherwise, it prints some warning messages and stops with a PostScript error. - Added support for elliptical arc segments in graphics paths.
- Added support for CMap operator
begincidchar
(thanks to Akira Kakuto for sending the patch). - Added suport for experimental 128-bit
XXH3
hashes. - The SVG optimizer module
simplify-transform
has been extended to incorporate translation and scaling components
into positional and size attributes if possible. - The CRC32 checksums used to verify the sanity of cache files has been replaced with
XXH32
hashes. - The bundled potrace library has been updated to version 1.16.
- The bundled xxHash library has been updated to version 0.7.2.
- The bundled Google Test library has been updated to version 1.10.
- Lots of code has been refactored and improved.
dvisvgm 2.7.4
dvisvgm 2.7.3
- Fixed randomly missing glyph paths referenced by
use
elements (issue #110). - Minor updates of the manual page.
- Some code refactorings.
dvisvgm 2.7.2
This maintenance release fixes an issue introduced with Ghostscript 9.27 due to the removal of GS_PDF_ProcSet
and pdfdict
from the public interface.
dvisvgm 2.7.1
- Fixed a bug in PostScript operator
setmatrix
(issue #106). - Fixed a build issue reported on MacPorts.
- Added the source files required to access the MiKTeX session object as the MiKTeX SDK has been deprecated.
dvisvgm 2.7
The main new feature of this release is command-line option --optimize
which
allows for optimization of the generated SVG tree after it has completely been built from the DVI data.
The optimizations are performed by running separate optimizer modules executed one by one in
a given order and thus transform the XML tree gradually. Currently, the following optimizations are available:
- Move common inheritable attributes of adjacent elements to group elements.
- Combine nested groups and unwrap groups without attributes.
- Remove redundant
clipPath
elements. - Simplify
transform
attributes.
More detailed information on option --optimize
and the optimizer modules can be found on the manual page.
Furthermore, a couple of smaller additions and changes have been made:
- All
raw
specials are now parsed and converted to proper XML nodes so that the optimizer
can also process SVG fragments added by the user. - Several improvements to SVG graphics path descriptions:
- Redundant spaces and leading zeros are omitted.
- Line commands representing zero-length lines are removed.
- The detection of reflected control points in Bézier curve sequences has been improved. As a result,
the shorthand curve commands
are applied more often.
- Added support for PostScript operators
xshow
,yshow
, andxyshow
. - Added evaluation of optional
psfile
/pdffile
special attributeclip
which clips the
drawing region to the bounding box of the image being processed. - Added the
\special
variantsdvisvgm:bbox lock
anddvisvgm:bbox unlock
to
disable and enable updating of the bounding box. By default, dvisvgm adapts the
bounding box of the current page if a new graphics element is added. This behavior can
be paused and resumed with the new specials. - Added optional modifier
transform
to dvisvgm'sbbox
specials to allow for
applying the current transformation matrix to the bounding box. - Added macro
{?matrix}
to dvisvgm'sraw
specials. It expands to the
current transformation matrix, e.g.matrix(0 -1 1 0 -214.88 106)
. - Option
--exact
has been renamed to--exact-bbox
. This change is backward compatible due to
dvisvgm's partial matching of option names. - The bundled xxHash library was updated to version 0.7.0.
- Lots of code refactorings.
dvisvgm 2.6.3
Changes
- dvisvgm now creates short, three-digit RGB hex values for color attributes if possible, e.g.
#123
instead of#112233
. - Fixed the rejection of paper formats, like
A4
, given as argument to option--bbox
. - Fixed the adaption of the vertical orientation when processing EPS/PDF files.
- Fixed the handling of backslashes in EPS/PDF file paths (Windows only).
- Updated the bundled Google Test library to version 1.8.1.
- Some code refactorings and improvements of the build system.
dvisvgm 2.6.2
Changes
- Fixed the scaling of line properties in PS operator
grestore
. - Fixed the handling of PS operators
charpath
andshow
which may call each other internally. - Improved the processing of PS operator
clippath
. - Prevent visible side-effects of PS operator
stringwidth
. - Updated the bundled brotli library to version 1.0.7.
- Some modifications of the build system to simplify the maintenance of dvisvgm in TeX Live.
dvisvgm 2.6.1
Changes
- Added configuration option
--disable-manpage
to prevent generating the manual page (issue #93). - If configuration option
--disable-bundled-libs
is given and some of the required system libraries are missing, the corresponding bundled libraries are used as a fallback (issue #94). - Updated the bundled brotli library to version 1.0.6.
- Fixed a build issue occurred with GCC 4.8.