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
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
|
POTRACE - transform bitmaps into vector graphics
* * *
DESCRIPTION
Potrace is a tool for tracing a bitmap, which means, transforming a
bitmap into a smooth, scalable image. The input is a bitmap (PBM,
PGM, PPM, or BMP), and the default output is one of several vector
file formats. A typical use is to create EPS files from scanned
data, such as company or university logos, handwritten notes, etc.
The resulting image is not "jaggy" like a bitmap, but smooth. It can
then be rendered at any resolution.
Potrace can currently produce the following output formats: EPS,
PostScript, PDF, SVG (scalable vector graphics), DXF, GeoJSON, PGM
(for easy antialiasing of pixel-based images), Gimppath, and
XFig. Additional backends might be added in the future.
A separate program, mkbitmap, is also provided. This program can act
as a pre-processor for Potrace, applying scaling and various filters
to an image before converting it to a bitmap. This is useful for
potracing greyscale and color images.
DEPENDENCIES
Potrace relies on the zlib library for PostScript level 3
compression. This library is pre-installed on most modern systems.
If not present, it can be obtained from http://www.gzip.org/zlib/.
COMPILATION
For generic compilation instructions, see the file INSTALL. In
addition, the following compile time options (options to ./configure)
are supported.
--with-libpotrace install Potrace library and headers (default: no)
--disable-zlib disable PostScript level 3 compression
--enable-metric use metric units (centimeters) as default
--enable-a4 use a4 as the default papersize
--enable-dumb-tty use simplified ASCII-only progress bar
See also ./configure --help.
INSTALLING
If you are installing from sources, just do "make install" as root.
If you are installing from a binary distribution, just copy the
"potrace" and "mkbitmap" binaries to a place where the operating
system expects them, such as /usr/local/bin. Also copy the files
"potrace.1" and "mkbitmap.1" to a directory where the operating
system looks for man pages, such as /usr/local/man/man1. For
instructions on installing Potrace under Windows, see the file
README-WIN
USAGE
For more detailed usage information, see the man page.
Usage: potrace [options] [filename...]
General options:
-h, --help - print this help message and exit
-v, --version - print version info and exit
-l, --license - print license info and exit
File selection:
<filename> - an input file
-o, --output <filename> - write all output to this file
-- - end of options; 0 or more input filenames follow
Backend selection:
-b, --backend <name> - select backend by name
-e, --eps - EPS backend (encapsulated PostScript) (default)
-p, --postscript - PostScript backend
-s, --svg - SVG backend (scalable vector graphics)
-g, --pgm - PGM backend (portable greymap)
-b pdf - PDF backend (portable document format)
-b pdfpage - fixed page-size PDF backend
-b dxf - DXF backend (drawing interchange format)
-b geojson - GeoJSON backend
-b gimppath - Gimppath backend (GNU Gimp)
-b xfig - XFig backend
Algorithm options:
-z, --turnpolicy <policy> - how to resolve ambiguities in path decomposition
-t, --turdsize <n> - suppress speckles of up to this size (default 2)
-a, --alphamax <n> - corner threshold parameter (default 1)
-n, --longcurve - turn off curve optimization
-O, --opttolerance <n> - curve optimization tolerance (default 0.2)
-u, --unit <n> - quantize output to 1/unit pixels (default 10)
-d, --debug <n> - produce debugging output of type n (n=1,2,3)
Scaling and placement options:
-P, --pagesize <format> - page size (default is letter)
-W, --width <dim> - width of output image
-H, --height <dim> - height of output image
-r, --resolution <n>[x<n>] - resolution (in dpi) (dimension-based backends)
-x, --scale <n>[x<n>] - scaling factor (pixel-based backends)
-S, --stretch <n> - yresolution/xresolution
-A, --rotate <angle> - rotate counterclockwise by angle
-M, --margin <dim> - margin
-L, --leftmargin <dim> - left margin
-R, --rightmargin <dim> - right margin
-T, --topmargin <dim> - top margin
-B, --bottommargin <dim> - bottom margin
--tight - remove whitespace around the input image
Color options, supported by some backends:
-C, --color #rrggbb - set foreground color (default black)
--fillcolor #rrggbb - set fill color (default transparent)
--opaque - make white shapes opaque
SVG options:
--group - group related paths together
--flat - whole image as a single path
Postscript/EPS/PDF options:
-c, --cleartext - do not compress the output
-2, --level2 - use postscript level 2 compression (default)
-3, --level3 - use postscript level 3 compression
-q, --longcoding - do not optimize for file size
PGM options:
-G, --gamma <n> - gamma value for anti-aliasing (default 2.2)
Frontend options:
-k, --blacklevel <n> - black/white cutoff in input file (default 0.5)
-i, --invert - invert bitmap
Progress bar options:
--progress - show progress bar
--tty <mode> - progress bar rendering: vt100 or dumb
Dimensions can have optional units, e.g. 6.5in, 15cm, 100pt.
Default is inches (or pixels for pgm, dxf, and gimppath backends).
Possible input file formats are: pnm (pbm, pgm, ppm), bmp.
Backends are: eps, postscript, ps, pdf, pdfpage, svg, dxf, geojson, pgm,
gimppath, xfig.
POTRACE LIBRARY (FOR DEVELOPERS)
As of Potrace release 1.6, the Potrace core functionality has been
separated into a library libpotrace.a. This makes it easy to integrate
tracing functionality into other GPL programs. The API of the library
is defined in the header file potracelib.h, and is documented in
doc/potracelib.pdf. It is not by default installed, but can be
installed with the --with-libpotrace configuration option.
DOCUMENTATION
Usage information is contained in the man page:
http://potrace.sourceforge.net/potrace.html
Many common questions are answered in the FAQ:
http://potrace.sourceforge.net/faq.html
Some examples are given on the following web pages:
http://potrace.sourceforge.net/samples.html
http://potrace.sourceforge.net/mkbitmap.html
The inner workings of the potrace algorithm are explained here:
http://potrace.sourceforge.net/potrace.pdf
The potrace library is documented here:
http://potrace.sourceforge.net/potracelib.pdf
COPYRIGHT
Copyright (C) 2001-2015 Peter Selinger
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 2 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.
You should have received a copy of the GNU General Public License
along with this program; if not, write to the Free Software Foundation,
Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
See also http://www.gnu.org/.
See the file COPYING for details.
GPG KEY
The key fingerprint of Peter Selinger's GPG key is:
12A2 4B3C 3790 B688 E484 7A98 A68B CC37 CA31 696A
This may be useful for authenticating future versions of Potrace.
|