• Home
  • History
  • Annotate
Name Date Size #Lines LOC

..03-May-2022-

AUTHORSH A D10-Oct-200228 22

COPYINGH A D10-Oct-200217.6 KiB340281

ChangeLogH A D08-Nov-200271.6 KiB2,8581,741

FAQH A D08-Nov-20022.6 KiB6149

HACKINGH A D23-Oct-20026.2 KiB199142

INSTALLH A D23-Oct-200211.1 KiB275217

Makefile.amH A D30-Oct-20023.5 KiB155131

Makefile.inH A D03-May-202280.6 KiB1,3631,240

NEWSH A D08-Nov-20023.1 KiB9482

READMEH A D30-Oct-20026.3 KiB158135

README.MINGH A D10-Oct-2002484 139

THANKSH A D25-Oct-2002668 2220

TODOH A D23-Oct-20021.3 KiB3833

acconfig.hH A D30-Oct-20021,005 317

aclocal.m4H A D08-Nov-2002138.4 KiB4,2333,790

atou.cH A D10-Oct-2002325 2113

atou.hH A D10-Oct-2002168 105

autotrace-config.afH A D10-Oct-2002393 2017

autotrace-config.inH A D08-Nov-20023.8 KiB216157

autotrace.1H A D10-Oct-20026.5 KiB269267

autotrace.cH A D03-Nov-200210.6 KiB454371

autotrace.dspH A D23-Oct-200210.3 KiB444344

autotrace.dswH A D10-Oct-2002541 3019

autotrace.hH A D08-Nov-200214.5 KiB451231

autotrace.m4H A D10-Oct-20026.3 KiB160149

autotrace.pc.inH A D10-Oct-2002314 1210

autotrace.slnH A D10-Oct-2002897 2221

autotrace.specH A D08-Nov-20021.8 KiB7356

autotrace.spec.inH A D23-Oct-20021.8 KiB7356

autotrace.vcprojH A D23-Oct-20029.1 KiB393392

bitmap.cH A D10-Oct-2002574 2616

bitmap.hH A D10-Oct-20021 KiB3216

cmdline.hH A D10-Oct-20022 KiB6036

color.cH A D10-Oct-2002420 2518

color.hH A D10-Oct-2002472 199

config.guessH A D22-Oct-200238.8 KiB1,3551,168

config.h.inH A D23-Oct-20022.5 KiB8660

config.subH A D20-Aug-200227.6 KiB1,4121,273

configureH A D03-May-2022336.8 KiB11,0839,006

configure.inH A D08-Nov-200211 KiB368339

curve.cH A D10-Oct-20027.9 KiB310191

curve.hH A D10-Oct-20024.5 KiB14374

despeckle.cH A D10-Oct-200220.8 KiB809472

despeckle.hH A D10-Oct-20021.5 KiB498

epsilon-equal.cH A D10-Oct-2002614 2515

epsilon-equal.hH A D10-Oct-2002605 196

exception.cH A D10-Oct-2002968 5044

exception.hH A D10-Oct-2002933 3825

filename.cH A D06-Nov-20023.4 KiB13380

filename.hH A D10-Oct-20021.6 KiB438

fit.cH A D03-Nov-200258.4 KiB1,6561,094

fit.hH A D03-Nov-2002820 2917

getopt.cH A D10-Oct-200216.2 KiB542281

getopt.hH A D10-Oct-20023.7 KiB10832

getopt1.cH A D10-Oct-20021.5 KiB4316

image-header.hH A D10-Oct-2002578 2111

image-proc.cH A D10-Oct-200214.1 KiB504386

image-proc.hH A D10-Oct-20021 KiB4721

input-bmp.cH A D10-Oct-200214.2 KiB525425

input-bmp.hH A D10-Oct-20021 KiB338

input-magick.cH A D29-Oct-20022.9 KiB9968

input-magick.hH A D10-Oct-20021.1 KiB318

input-png.cH A D03-May-20224.3 KiB149102

input-png.hH A D10-Oct-20021.1 KiB338

input-pnm.cH A D10-Oct-200213.6 KiB531398

input-pnm.hH A D10-Oct-20021.1 KiB328

input-tga.cH A D10-Oct-200216.3 KiB634454

input-tga.hH A D10-Oct-20021 KiB328

input.cH A D06-Nov-20026.2 KiB280238

input.hH A D10-Oct-20022.8 KiB8726

install-shH A D29-Jul-20025.4 KiB252153

libming.dspH A D10-Oct-200210.1 KiB437338

libming.dswH A D10-Oct-2002536 3019

libming.slnH A D10-Oct-2002914 2221

libming.vcprojH A D10-Oct-20028.9 KiB374373

logreport.cH A D10-Oct-2002575 2916

logreport.hH A D10-Oct-20021.1 KiB4026

ltmain.shH A D20-Aug-2002138.1 KiB5,0654,050

main.cH A D31-Oct-200216.3 KiB566444

median.cH A D10-Oct-200228.7 KiB908608

message.hH A D10-Oct-20021.8 KiB4932

missingH A D29-Jul-200210 KiB337263

mkinstalldirsH A D29-Jul-20021.8 KiB10072

output-cgm.cH A D06-Nov-20026.9 KiB285204

output-cgm.hH A D10-Oct-20021.1 KiB3310

output-dr2d.cH A D08-Nov-200218 KiB686526

output-dr2d.hH A D10-Oct-20021.1 KiB307

output-dxf.cH A D08-Nov-200226.8 KiB901738

output-dxf.hH A D10-Oct-20021.1 KiB3310

output-emf.cH A D06-Nov-200219.8 KiB791537

output-emf.hH A D10-Oct-20021.1 KiB3410

output-epd.cH A D10-Oct-20026.1 KiB193127

output-epd.hH A D10-Oct-20021.2 KiB3510

output-eps.cH A D10-Oct-20027 KiB238160

output-eps.hH A D10-Oct-20021.1 KiB3610

output-er.cH A D30-Oct-20027.4 KiB228160

output-er.hH A D10-Oct-20021.1 KiB3310

output-fig.cH A D10-Oct-200214.3 KiB459339

output-fig.hH A D10-Oct-20021.2 KiB3410

output-mif.cH A D10-Oct-20026.1 KiB203147

output-mif.hH A D10-Oct-20021.1 KiB3510

output-p2e.cH A D10-Oct-20027.9 KiB248174

output-p2e.hH A D10-Oct-20021.2 KiB3510

output-pdf.cH A D06-Nov-200211.6 KiB353260

output-pdf.hH A D10-Oct-20021.2 KiB3713

output-pstoedit.cH A D24-Oct-20029.9 KiB363262

output-pstoedit.hH A D22-Oct-20021.5 KiB3815

output-sk.cH A D10-Oct-20023 KiB9361

output-sk.hH A D10-Oct-20021.1 KiB3510

output-svg.cH A D10-Oct-20023.2 KiB10271

output-svg.hH A D10-Oct-20021.1 KiB3510

output-swf.cH A D03-May-20223.3 KiB11680

output-swf.hH A D10-Oct-20021.2 KiB3510

output.cH A D06-Nov-20028.2 KiB333282

output.hH A D10-Oct-20023.8 KiB9756

pxl-outline.cH A D08-Nov-200236.3 KiB1,070861

pxl-outline.hH A D22-Oct-20022 KiB7041

quantize.hH A D10-Oct-20021.8 KiB5526

shape_cubic.c.diffH A D10-Oct-2002235 118

spline.cH A D04-Nov-20024.8 KiB195128

spline.hH A D05-Nov-20023.3 KiB9152

stamp-h.inH A D08-Nov-200210 21

strgicmp.cH A D06-Nov-20021.4 KiB7566

strgicmp.hH A D06-Nov-2002221 106

thin-image.cH A D10-Oct-200213.7 KiB369259

thin-image.hH A D10-Oct-20021.2 KiB377

types.hH A D10-Oct-20021.5 KiB6329

vector.cH A D10-Oct-20024.8 KiB315217

vector.hH A D10-Oct-20022.6 KiB7942

xstd.cH A D10-Oct-2002675 4534

xstd.hH A D10-Oct-20022.1 KiB9768

README

1AutoTrace is a utility for converting bitmap into vector graphics.
2
3Features
4========
5- tracing outline and midline
6- color reduction and despeckling
7- supports a lot of input and output format
8
9Licenses
10========
11The program can be used under the GNU General Public License.
12
13The input and output functions (input-*.[ch] and output-*.[ch])
14can also be used under the GNU Lesser General Public License(LGPL).
15
16Some of code was partially derived from limn of GNU fontutils.
17However, almost all code is rewritten.
18
19Platforms
20=========
21The program was tested using GNU/Linux, HP UX, Solaris, Windows98,
22Windows NT, Windows 2000, MAC and OS/2 4.0. It compiles with GCC,
23Borland C++ Builder, Visual C++ and many other compilers.
24
25If you use Visual C++ 6.0 for compilation be sure to have at
26least SP 5 otherwise you could get Memory access violations due to
27a bug in earlier versions.
28
29Requirements
30============
31AutoTrace can be compiled standalone, then it can import pnm, pbm,
32pgm, ppm, bmp and tga files. If you have installed libpng
33(http://www.libpng.org/pub/png/libpng.html) you can also read png
34files and with ImageMagick a very broad range of input formats is
35available.
36
37You will need at least libpng 1.0.6 and ImageMagick 5.2.1.  Most
38output formats like dxf, emf, eps, ai, er, fig, svg, epd, dr2d and sk
39are directly integrated in AutoTrace, but if you need swf export you
40need to install Ming (http://www.opaque.net/ming/). Also you can
41export to the p2e format. This format can be converted by pstoedit
42(www.pstoedit.net) to a large number of other formats. If you have
43installed the latest pstoedit(3.32 or newer), autotrace uses pstoedit
44directly. However, direct pstoedit support is not stable enough.
45See INSTALL file for more detail.
46
47Installation
48============
49See the file INSTALL.
50
51Usage
52=====
53Program comes from two parts: command and library.
54
55Here the options you can use in the command:
56    Usage: autotrace.exe [options] <input_name>.
57    Options:<input_name> should be a supported image.
58      You can use `--' or `-' to start an option.
59      You can use any unambiguous abbreviation for an option name.
60      You can separate option names and values with `=' or ` '.
61    background-color <hexadecimal>: the color of the background that
62      should be ignored, for example FFFFFF;
63      default is no background color.
64    centerline: trace a character's centerline, rather than its outline.
65    color-count <unsigned>: number of colors a color bitmap is reduced to,
66      it does not work on gray scale, allowed are 1..256;
67      default is 0, that means not color reduction is done.
68    corner-always-threshold <angle-in-degrees>: if the angle at a pixel is
69      less than this, it is considered a corner, even if it is within
70      `corner-surround' pixels of another corner; default is 60.
71    corner-surround <unsigned>: number of pixels on either side of a
72      point to consider when determining if that point is a corner;
73      default is 4.
74    corner-threshold <angle-in-degrees>: if a pixel, its predecessor(s),
75      and its successor(s) meet at an angle smaller than this, it's a
76      corner; default is 100.
77    despeckle-level <unsigned>: 0..20; default is no despeckling.
78    despeckle-tightness <real>: 0.0..8.0; default is 2.0.
79    dpi <unsigned>: The dots per inch value in the input image, affects scaling
80      of mif output image
81    error-threshold <real>: subdivide fitted curves that are off by
82      more pixels than this; default is 2.0.
83    filter-iterations <unsigned>: smooth the curve this many times
84      before fitting; default is 4.
85    input-format:  TGA, PBM, PNM, PGM, PPM or BMP.
86    help: print this message.
87    line-reversion-threshold <real>: if a spline is closer to a straight
88      line than this, weighted by the square of the curve length, keep it a
89      straight line even if it is a list with curves; default is .01.
90    line-threshold <real>: if the spline is not more than this far away
91      from the straight line defined by its endpoints,
92      then output a straight line; default is 1.
93    list-output-formats: print a list of support output formats to stderr.
94    list-input-formats:  print a list of support input formats to stderr.
95    log: write detailed progress reports to <input_name>.log.
96    output-file <filename>: write to <filename>
97    output-format <format>: use format <format> for the output file
98    output-format <format>: use format <format> for the output file
99      eps, ai, p2e, sk, svg, fig, swf, emf, mif, er, dxf, epd, pdf, cgm or dr2d
100      can be used.
101    preserve-width: whether to preserve line width prior to thinning.\n\
102    remove-adjacent-corners: remove corners that are adjacent.
103    tangent-surround <unsigned>: number of points on either side of a
104      point to consider when computing the tangent at that point; default is 3.
105    report-progress: report tracing status in real time.
106    debug-arch: print the type of cpu.
107    debug-bitmap: dump loaded bitmap to <input_name>.bitmap.
108    version: print the version number of this program.
109    width-weight-factor: weight factor for fitting the line width.
110
111The library is named libautotrace. About the usage of the library
112see autotrace.h.
113Here is a sample program that uses libautotrace.
114To compile, invoke following commands (on posix):
115gcc sample.c `./autotrace-config --libs` `./autotrace-config --cflags`
116
117    /* sample.c */
118    #include <autotrace/autotrace.h>
119
120    int main()
121    {
122      char * fname = "img/triangle.png";
123      at_fitting_opts_type * opts = at_fitting_opts_new();
124      at_input_read_func rfunc = at_input_get_handler(fname);
125      at_bitmap_type * bitmap ;
126      at_splines_type * splines;
127      at_output_write_func wfunc = at_output_get_handler_by_suffix("eps");
128
129      bitmap = at_bitmap_read(rfunc, fname, NULL, NULL, NULL);
130      splines = at_splines_new(bitmap, opts, NULL, NULL);
131      at_splines_write(wfunc, stdout, "", NULL splines, NULL, NULL);
132      return 0;
133    }
134
135GUI Frontend
136============
137Frontline, a Gtk+/Gnome based GUI frontend, is under development.
138See http://autotrace.sourceforge.net/frontline
139
140autotrace mailing list is used to discuss frontline.  See next.
141
142More Information
143================
144See http://autotrace.sourceforge.net
145
146There is a mailing list to discussion autotrace.
147See also http://groups.yahoo.com/group/autotrace/
148
149Contribution
150============
151Programmers wanted!!!
152
153See TODO and HACKING file and contact the author.
154
155Author
156======
157Martin Weber (martweb@gmx.net)
158

README.MING

1For Visual C++ user:
2
3If you want swf support you have to get Ming at
4http://www.opaque.net/ming/.  You'll get an unresolved symbol when
5linking to the ming library with using Visual C++.  In Ming-0.2a
6shape_cubic.c has to be patched(shape_cubic.c.diff). Project files for
7Visual C++ 6.0 you can find in this directory(libming.dps, libming.dsw).
8
9The patch is already reported to the ming author. The next version of MING
10will contain this patch.
11
12Martin Weber and Masatake YAMATO
13