
	   POTRACE - transform bitmaps into vector graphics
			
				* * *
	   
DESCRIPTION

 Potrace is a utility 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, SVG (scalable vector graphics), PGM (for easy
 antialiasing of pixel-based images), and XFig. An experimental
 Gimppath backend is also provided. 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/.

 Potrace uses the external 'compress' program for PostScript level 2
 compression. If this program is not present, then potrace will fall
 back to uncompressed output. See also PATENT ISSUES below.

COMPILATION

 For generic compilation instructions, see the file INSTALL.  In
 addition, the following compile time options (options to ./configure)
 are supported:

 --disable-zlib:      disable PostScript level 3 compression
 --enable-metric:     use metric units (centimeters) as default
 --enable-a4:	      use a4 as the default papersize

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.

PATENT ISSUES

 Potrace uses PostScript level 2 compression by default.
 Unfortunately, the LZW algorithm which performs this compression is
 patented, and thus it cannot be implemented directly in potrace.  We
 circumvent this problem by using the external "compress" program to
 perform the actual compression, then transforming the output into the
 required format.  Note that the "compress" program is a separate
 piece of software and is not a part of potrace; it is the user's
 responsibility to ensure that his or her copy of "compress" is properly
 licensed.

 On systems where the compress program is not available, potrace will
 fall back to the uncompressed output method. The presence of the
 compress program is detected automatically at run-time.

 Note: the patent in question, the so-called LZW patent (see
 http://www.unisys.com/about__unisys/lzw/), has expired in the United
 States as of June 20, 2003. Alas, I live in Canada, where this patent
 will continue to be valid until July 7, 2004. So potrace will
 continue to use the workaround until that date.

USAGE

 For more detailed usage information, see the man page.

Usage: potrace [options] [file...]
General options:
 -h, --help                 - print this help message and exit
 -v, --version              - print version info and exit
 -l, --license              - print license info and exit
 -V, --show-defaults        - print compiled-in defaults and exit
Input/output options:
 -o, --output <file>        - output to file
Backend selection:
 -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, --backend <name>       - select backend by name
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:
 -W, --width <dim>          - width of output image
 -H, --height <dim>         - height of output image
 -r, --resolution <n>[x<n>] - resolution (in dpi)
 -x, --scale <n>[x<n>]      - scaling factor (pgm backend)
 -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
Output options, supported by some backends:
 -C, --color #rrggbb        - set line color (default black)
 --fillcolor #rrggbb        - set fill color (default transparent)
 --opaque                   - make white shapes opaque
 --group                    - group related paths together
Postscript/EPS options:
 -P, --pagesize <format>    - page size (default is letter)
 -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

Dimensions can have optional units, e.g. 6.5in, 15cm, 100pt.
Default is inches (or pixels for pgm and gimppath backends).
Possible input file formats are: pnm (pbm, pgm, ppm), bmp.
Backends are: eps, postscript, ps, svg, pgm, gimppath, xfig.

DOCUMENTATION

 The man page contains detailed usage information:
 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 following document describes in detail how potrace works:
 http://potrace.sourceforge.net/potrace.pdf

COPYRIGHT

 Copyright (C) 2001-2004 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., 59 Temple Place, Suite 330, Boston, MA 02111-1307,
 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.
