AUTOTRACE(1)

πŸ“¦
version 0.31.9 Β· 2 versions
, in fedora 43, fedora 44, nixos 26.05, nixpkgs unstable

πŸ’– AUTOTRACE(1) πŸ’–

okay bestie, this is a General Commands Manual page for autotrace, and it's genuinely one of the coolest little tools out there. sit down, grab a strawberry πŸ“, and let me tell you everything.


✨ NAME ✨

autotrace β€” converts bitmap image data into vector graphics

like. it takes your pixel-y lil picture and turns it into smooth math curves. it's giving glow-up. πŸ‘‘


🌈 SYNOPSIS 🌈

autotrace [-background-color  hexvalue] [-centerline] [-color-count
int] [-corner-always-threshold  angle] [-corner-surround  int] [-corner-
threshold  angle] [-despeckle-level  int] [-despeckle-tightness  real]
[-dpi  int] [-error-threshold  real] [-filter-iterations  int] [-help]
[-input-format  format] [-line-reversion-threshold  real] [-line-
threshold  real] [-list-input-formats] [-list-output-formats] [-log]
[-output-file  file] [-output-format  format] [-preserve-width]
[-remove-adjacent-corners] [-report-progress] [-debug-arch] [-debug-
bitmap] [-tangent-surround  int] [-version] [-width-factor  real]
inputfile

that's a LOT of options but don't panic, we're going through every single one, no skipping, that's the rules. πŸ’…


πŸ¦‹ DESCRIPTION πŸ¦‹

So the autotrace program takes bitmap graphics from the file inputfile that you name on the command line, and as output it produces a collection of splines that approximate the original image β€” which is literally the whole bitmap β†’ vector format conversion moment. it behaves in a manner similar to the commercial software known as *tream*ine or *orel*race. iconic lineage honestly.

The result goes to standard output unless the -output-file option is active. so it'll just spill out into your terminal if you don't redirect it, bestie, watch out πŸ™ˆ


πŸŽ€ OPTIONS πŸŽ€

okay first, housekeeping rules that apply to everything below:

  • Options can begin with either -- or -. either one, she's flexible. ✨
  • Any unambiguous abbreviation can be used for the option name. so like, shorten it, but not so much that it's ambiguous. iykyk.
  • Option names and values can be separated with either a space or an equal sign (=). your choice, both slay.

  • -background-color hexvalue β€” use the color given by the hexadecimal code hexcode as the background that should be ignored. for example FFFFFF. (default: no background color, or 0xFFFFFF if -centerline is set). so like, "pretend this color isn't here." πŸ‘»
  • -centerline β€” trace an object's centerline. (default: employ its outline.) so it traces the squiggly middle instead of the edges, very main character of it.
  • -color-count int β€” reduce the bitmap down to the number of colors given by the unsigned integer int. range: 1-256. the default value of 0 means no color reduction is to be done. > ⚠️ Does not work with grayscale images. periodt.
  • -corner-always-threshold angle β€” consider ANY angle at a pixel that falls below the specified angle (in degrees) to be a corner, even if it's bordered by other corner pixels. (default: 60).
  • -corner-surround int β€” consider the specified number of pixels on either side of a point when figuring out if that point is a corner. (default: 4).
  • -corner-threshold angle β€” consider any pixel that forms an angle with its predecessor(s) and successor(s) smaller than the specified angle (in degrees) to be a corner. (default: 100).
  • -despeckle-level int β€” use the specified integer as the value for despeckling. range: 1-20. (default: no despeckling).
  • -despeckle-tightness real β€” use the specified real number as the value for despeckle tightness. range: 0.0-8.0. (default: 2.0).
  • -dpi int β€” the dots per inch value in the input image. this affects the scaling of mif output image. πŸ“
  • -error-threshold real β€” subdivide fitted curves that are offset by a number of pixels exceeding the specified real number. (default: 2.0).
  • -filter-iterations int β€” smooth the curve the specified number of times prior to fitting. (default: 4).
  • -help β€” print a help message and exit. bestie in need = bestie indeed 🫢
  • -input-format format β€” use the specified input format, where format is one of:
    • BMP (Windows bitmap format)
    • PBM (Portable BitMap format)
    • PGM (Portable Graymap format)
    • PNM (Portable Anymap format)
    • PPM (Portable Pixmap format)
    • TGA (Targa format)

The supported input formats are determined when the application is built and depend upon the availability of other software. (the -list-input-formats command can be used to determine which are supported locally.)

  • -line-reversion-threshold real β€” when a spline is closer to a straight line than the specified real number weighted by the square of the curve length, maintain it as a straight line, even if it is a list with curves. (default: .01).
  • -line-threshold real β€” if a spline does not deviate from the straight line defined by its endpoints by more than the specified number of pixels, then treat it as a straight line. (default: 1).
  • -list-input-formats β€” send a list of the supported input formats to stderr. πŸ“‹
  • -list-output-formats β€” send a list of the supported output formats to stderr. πŸ“‹
  • -log β€” send a detailed progress report to the file inputfile.log. it literally names the log after your input file, obsessed.
  • -output-file file β€” send the output to the specified file. πŸ“
  • -output-format format β€” use the specified output format, where format is one of:
    • ai (Adobe Illustrator)
    • cgm (Computer Graphics Metafile)
    • dr2d (IFF DR2D format, used almost exclusively on Amiga platforms)
    • dxf (AutoCAD Drawing Exchange format)
    • emf (Windows Enhanced Metafile format)
    • epd (Encapsulated Vectorial Graphics format)
    • eps (Encapsulated PostScript)
    • er (Elastic Reality Shape format)
    • fig (xfig (1) 3.2)
    • mif (FrameMaker MIF format)
    • pdf (Portable Data Format)
    • p2e (pstoedit (1) frontend)
    • sk (Sketch)
    • svg (Scalable Vector Graphics)
    • swf (Shockwave Flash 3)

The supported output formats are determined when the application is built and depend upon the availability of other software. (the -list-output-formats command can be used to determine which are supported locally.)

  • -preserve-width β€” whether to preserve line width prior to thinning.
  • -remove-adjacent-corners β€” remove adjacent corners. bye corners πŸ‘‹
  • -report-progress β€” report tracing status in real time. live updates, we love to see it.
  • -debug-arch β€” print the type of cpu. πŸ–₯️
  • -debug-bitmap β€” dump loaded bitmap to <input_name>.bitmap.
  • -tangent-surround int β€” consider the specified number of points to either side of a point when computing the tangent at that point. (default: 3).
  • -version β€” print the version number of the program and exit.
  • -width-factor real β€” weight factor for fitting the linewidth.

🌸 FILES 🌸

  • /usr/bin/autotrace β€” binary

that's where she lives. πŸ’œ


🧚 SEE ALSO 🧚

gimp(1), ImageMagick(1), pbm(1), pgm(1), pnm(1), ps2pdf(1), pstoedit(1), pstoepd(1), sketch(1), xfig(1), xv(1)

go read those too, they're the friend group. 🌈


πŸ‘‘ AUTHORS πŸ‘‘

Martin Weber (martweb@gmx.net)

Manual page by R. P. C. Rodgers, Lister Hill National Center for Biomedical Communications, U.S. National Library of Medicine (rodgers@nlm.nih.gov).


and that's the whole page, bestie πŸ’– written 10 October 2002 β€” vintage but still eating β€” and the footer says AUTOTRACE(1) so you know exactly which girl you're dealing with. slay, go vectorize something. πŸ¦‹βœ¨

πŸ“¦ where this page comes from