You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
When I run dvisvgm multiple times on the same DVI file, with --font-format set to anything other than svg, the resulting SVG files are different (not always, but at least about 10% of the time). This makes it inconvenient to have the SVG files checked into version control, or to run regression tests on the steps leading up to their creation.
The command is something like:
dvisvgm --page=1- --font-format=$format foo.dvi
where $format is one of ttf, woff, or woff2. The diffs are all in the @font-face lines, i.e. the actual base-64 encoding of the font.
Is it known where this non-determinism/randomness come from? Is there a way to avoid it (set a random seed or something)? It possibly has something to do with the time, as using faketime helps a bit.
The text was updated successfully, but these errors were encountered:
I have to look more closely into the sources, but I guess you're right. It's probably the fontforge library that writes the current date/time into the TTF header which also affects WOFF and WOFF2 as they are basically compressed TTF files.
This seems to result in the same SVG files across runs, though I'm yet to try it with a larger file. The same font still varies across the SVGs corresponding to different pages, but across runs it seems to be consistent. Anyway, this is probably not the ideal solution.
When I run
dvisvgm
multiple times on the same DVI file, with--font-format
set to anything other thansvg
, the resulting SVG files are different (not always, but at least about 10% of the time). This makes it inconvenient to have the SVG files checked into version control, or to run regression tests on the steps leading up to their creation.The command is something like:
where
$format
is one ofttf
,woff
, orwoff2
. The diffs are all in the@font-face
lines, i.e. the actual base-64 encoding of the font.Is it known where this non-determinism/randomness come from? Is there a way to avoid it (set a random seed or something)? It possibly has something to do with the time, as using
faketime
helps a bit.The text was updated successfully, but these errors were encountered: