summaryrefslogtreecommitdiff
path: root/Build/source/texk/dvisvgm/dvisvgm-src/README
blob: ea4b24eb16d2c033b2f92b1e56da9ec707e26c5a (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
dvisvgm -- A DVI to SVG converter

DESCRIPTION

 dvisvgm is a utility for TeX/LaTeX users. It converts DVI and EPS files to
 the XML-based scalable vector graphics format SVG.


DEPENDENCIES

 dvisvgm relies on the following free libraries:
 * Clipper (http://www.angusj.com/delphi/clipper.php)
   To compute the intersections of two curved paths, dvisvgm flattens the paths
   to polygons, intersects them using Clipper, and reconstructs the curves
   afterwards.

 * FontForge library (https://www.fontforge.org)
   dvisvgm can be built with optional WOFF support that allows to embed the
   font data in WOFF or TrueType format rather than as SVG. The FontForge
   library provides the required functions to create font files in these
   formats. A reduced version of the library is bundled with the dvisvgm
   sources. It's also available at https://github.com/mgieseki/ff-woff.

 * FreeType 2 (http://www.freetype.org)
   This library is used to extract the glyph outlines from vector fonts
   (PFB, OTF, TTF).

 * Ghostscript (https://www.ghostscript.com)
   The PostScript special handler requires the Ghostscript library
   libgs.so (Linux) or gsdll32.dll/gsdll64.dll (Windows) to be installed.
   If the configure script finds the corresponding Ghostscript development
   files on the system, it directly links against libgs.so.N, where N is the
   library's ABI version. Otherwise, the library is looked up at runtime,
   and PostScript support is enabled only if libgs.so can be found.
   Due to incompatible changes of the Ghostscript API, dvisvgm requires
   Ghostscript 8.31 or later.

 * kpathsea (https://tug.org/kpathsea)
   This library is part of the Web2C package and is usually installed in
   conjunction with a TeX distribution. kpathsea provides functions for
   searching files in the large texmf tree. Please ensure that you use the
   kpathsea version coming with or matching your TeX system.

 * potracelib (http://potrace.sourceforge.net)
   Peter Selinger's bitmap tracing library is utilized to vectorize Metafont's
   bitmap output.

 * woff2 and brotli (https://github.com/google/woff2)
   These Google libraries are bundled with the dvisvgm sources. They are used
   to create WOFF2 from TrueType fonts.

 * xxHash (https://github.com/Cyan4973/xxHash)
   The xxHash library provides a fast hash algorithm. dvisvgm uses it to
   create unique integer values from PostScript character names in order to
   store them in a compact way together with their Unicode points. A recent
   version of xxHash is bundled with the dvisvgm sources.

 * zlib (http://www.zlib.org)
   Compressed SVG files are produced by using functions of this library and the
   Gzstream wrapper classes (http://www.cs.unc.edu/Research/compgeom/gzstream)
   which are licensed under LGPL version 2.1 (or optionally any later version)
   and should be included with this package.

 If you want to build and run the test suite located in the tests subdirectory,
 you also need the Google Test libraries (https://github.com/google/googletest).


BUILDING DVISVGM FROM SOURCE

 dvisvgm is written in C++11 (ISO C++ standard 2011) and requires an appropriate
 compiler, like GCC 4.8.1, Clang 3.3, or any later version. The configure script
 checks for the availability of C++11 support and adds the proper compiler
 options if necessary.

 Quick installation info:
   * type "./autogen.sh" if "configure" is not present in the dvisvgm
     root folder
   * type "./configure"
   * type "make"
   * type "make install" as root (or "sudo make install")

 For generic configuration instructions see the file INSTALL.

 The configure script should recognize all necessary parameters.
 If a library is installed but not detected, specify its location
 as commandline parameter of configure, e.g.
   ./configure --with-freetype=/usr/local/freetype
 (all available options can be displayed with ./configure --help)

 The tracer module calls Metafont in case of lacking TFM or PFB files
 via a system call. Please ensure that Metafont is installed and
 reachable through the system's search path.

 If you don't like compiling the sources yourself, you can
 download pre-compiled executables for Windows and MiKTeX
 from the project website instead (see below).


USAGE
 Information about the command-line interface and the available options can be
 found in the manual page.


ADDITIONAL INFORMATION
 This package is available from CTAN (dviware/dvisvgm) and can be downloaded
 from the project website as well:

    http://dvisvgm.bplaced.net

 Here you can find the sources, pre-compiled binaries and further additional
 information about the converter and related topics.

 If you've found a bug, please let me know. You can either send me an email or
 preferably use the bug tracker at GitHub (https://github.com/mgieseki/dvisvgm).


COPYRIGHT

 Copyright (C) 2005-2017 Martin Gieseking <martin.gieseking@uos.de>

 This program is free software; you can redistribute it and/or modify it
 under the terms of the GNU General Public License as published by the
 Free Software Foundation; either version 3 of the License, or (at your
 option) any later version.

 This program is distributed in the hope that it will be useful, but
 WITHOUT ANY WARRANTY; without even the implied warranty of
 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General
 Public License for more details.

 See file COPYING for details.