Home » Archimedes archive » Acorn User » AU 1997-Xmas B.adf » PD » MakeJPEG/!MakeJPEG/Resources/JPEG/doc/usage

MakeJPEG/!MakeJPEG/Resources/JPEG/doc/usage

This website contains an archive of files for the Acorn Electron, BBC Micro, Acorn Archimedes, Commodore 16 and Commodore 64 computers, which Dominic Ford has rescued from his private collection of floppy disks and cassettes.

Some of these files were originally commercial releases in the 1980s and 1990s, but they are now widely available online. I assume that copyright over them is no longer being asserted. If you own the copyright and would like files to be removed, please contact me.

Tape/disk: Home » Archimedes archive » Acorn User » AU 1997-Xmas B.adf » PD
Filename: MakeJPEG/!MakeJPEG/Resources/JPEG/doc/usage
Read OK:
File size: 5662 bytes
Load address: 0000
Exec address: 0000
File contents
USAGE instructions for the Independent JPEG Group's JPEG software
=================================================================

This file describes usage of the JPEG conversion programs cjpeg and djpeg,
as well as the utility programs jpegtran, rdjpgcom and wrjpgcom.  (See
the other documentation files if you wish to use the JPEG library within
your own programs.)

If you are on a Unix machine you may prefer to read the Unix-style manual
pages in files cjpeg.1, djpeg.1, jpegtran.1, rdjpgcom.1, wrjpgcom.1.


INTRODUCTION

These programs implement JPEG image compression and decompression.  JPEG
(pronounced "jay-peg") is a standardized compression method for full-color
and gray-scale images.  JPEG is designed to handle "real-world" scenes,
for example scanned photographs.  Cartoons, line drawings, and other
non-realistic images are not JPEG's strong suit; on that sort of material
you may get poor image quality and/or little compression.

JPEG is lossy, meaning that the output image is not necessarily identical to
the input image.  Hence you should not use JPEG if you have to have identical
output bits.  However, on typical real-world images, very good compression
levels can be obtained with no visible change, and amazingly high compression
is possible if you can tolerate a low-quality image.  You can trade off image
quality against file size by adjusting the compressor's "quality" setting.


GENERAL USAGE

We provide two programs, cjpeg to compress an image file into JPEG format,
and djpeg to decompress a JPEG file back into a conventional image format.

On Unix-like systems, you say:
	cjpeg [switches] [imagefile] >jpegfile
or
	djpeg [switches] [jpegfile]  >imagefile
The programs read the specified input file, or standard input if none is
named.  They always write to standard output (with trace/error messages to
standard error).  These conventions are handy for piping images between
programs.

On most non-Unix systems, you say:
	cjpeg [switches] imagefile jpegfile
or
	djpeg [switches] jpegfile  imagefile
i.e., both the input and output files are named on the command line.  This
style is a little more foolproof, and it loses no functionality if you don't
have pipes.  (You can get this style on Unix too, if you prefer, by defining
TWO_FILE_COMMANDLINE when you compile the programs; see install.doc.)

You can also say:
	cjpeg [switches] -outfile jpegfile  imagefile
or
	djpeg [switches] -outfile imagefile  jpegfile
This syntax works on all systems, so it is useful for scripts.

The currently supported image file formats are: PPM (PBMPLUS color format),
PGM (PBMPLUS gray-scale format), BMP, GIF, Targa, and RLE (Utah Raster Toolkit
format).  (RLE is supported only if the URT library is available.)
cjpeg recognizes the input image format automatically, with the exception
of some Targa-format files.  You have to tell djpeg which format to generate.

JPEG files are in the defacto standard JFIF file format.  There are other,
less widely used JPEG-based file formats, but we don't support them.

All switch names may be abbreviated; for example, -grayscale may be written
-gray or -gr.  Most of the "basic" switches can be abbreviated to as little as
one letter.  Upper and lower case are equivalent (-GIF is the same as -gif).
British spellings are also accepted (e.g., -greyscale), though for brevity
these are not mentioned below.


CJPEG DETAILS

The basic command line switches for cjpeg are:

	-quality N	Scale quantization tables to adjust image quality.
			Quality is 0 (worst) to 100 (best); default is 75.
			(See below for more info.)

	-grayscale	Create monochrome JPEG file from color input.
			Be sure to use this switch when compressing a grayscale
			GIF file, because cjpeg isn't bright enough to notice
			whether a GIF file uses only shades of gray.  By
			saying -grayscale, you'll get a smaller JPEG file that
			takes less time to process.

	-optimize	Perform optimization of entropy encoding parameters.
			Without this, default encoding parameters are used.
			-optimize usually makes the JPEG file a little smaller,
			but cjpeg runs somewhat slower and needs much more
			memory.  Image quality and speed of decompression are
			unaffected by -optimize.

	-progressive	Create progressive JPEG file (see below).

	-targa		Input file is Targa format.  Targa files that contain
			an "identification" field will not be automatically
			recognized by cjpeg; for such files you must specify
			-targa to make cjpeg treat the input as Targa format.
			For most Targa files, you won't need this switch.

The -quality switch lets you trade off compressed file size against quality of
the reconstructed image: the higher the quality setting, the larger the JPEG
file, and the closer the output image will be to the original input.  Normally
you want to use the lowest quality setting (smallest file) that decompresses
into something visually indistinguishable from the original image.  For this
purpose the quality setting should be between 50 and 95; the default of 75 is
often about right.  If you see defects at -quality 75, then go up 5 or 10
counts at a time until you are happy with the output image.  (The optimal
setting will vary from one image to another.)

-quality 100 will generate a quantization table of all 1's, minimizing loss
in the quantization step (but there is still information loss in subsampling,
as well as roundoff error).  This setting is mainly of interest for
experimental purposes.  Quality values above about 95 are NOT recommended for
normal use; the compressed file size goes up dramatically for hardly any gain
in output image quality.

In the other direction, quality values below 50 will produce very small files
of low image quality.  Settings around 5 to 10 might be useful in preparing an
index of a large image library, for example.  Try -quality 2 (or so) for some
amusing Cubist effects.  (Note: quality values below about 25 generate 2-byte
quantization tables, which are considered optional in the JPEG standard.
cjpeg emits a warning message when you give such a quality value, because some
other JPEG programs may be unable to decode the resulting file.  Use -baseline
if you need to ensure compatibility at low quality values.)

The -progressive switch creates a "progressive JPEG" file.  In this type of
JPEG file, the data is stored in multiple scans of increasing quality.  If the
file is being transmitted over a slow communications link, the decoder can use
the first scan to display a low-quality image very quickly, and can then
improve the display with each subsequent scan.  The final image is exactly
equivalent to a standard JPEG file of the same quality setting, and the total
file size is about the same --- often a little smaller.  CAUTION: progressive
JPEG is not yet widely implemented, so many decoders will be unable to view a
progressive JPEG file at all.

Switches for advanced users:

	-dct int	Use integer DCT method (default).
	-dct fast	Use fast integer DCT (less accurate).
	-dct float	Use floating-point DCT method.
			The float method is very slightly more accurate than
			the int method, but is much slower unless your machine
			has very fast floating-point hardware.  Also note that
			results of the floating-point method may vary slightly
			across machines, while the integer methods should give
			the same results everywhere.  The fast integer method
			is much less accurate than the other two.

	-restart N	Emit a JPEG restart marker every N MCU rows, or every
			N MCU blocks if "B" is attached to the number.
			-restart 0 (the default) means no restart markers.

	-smooth N	Smooth the input image to eliminate dithering noise.
			N, ranging from 1 to 100, indicates the strength of
			smoothing.  0 (the default) means no smoothing.

	-maxmemory N	Set limit for amount of memory to use in processing
			large images.  Value is in thousands of bytes, or
			millions of bytes if "M" is attached to the number.
			For example, -max 4m selects 4000000 bytes.  If more
			space is needed, temporary files will be used.

	-verbose	Enable debug printout.  More -v's give more printout.
	or  -debug	Also, version information is printed at startup.

The -restart option inserts extra markers that allow a JPEG decoder to
resynchronize after a transmission error.  Without restart markers, any damage
to a compressed file will usually ruin the image from the point of the error
to the end of the image; with restart markers, the damage is usually confined
to the portion of the image up to the next restart marker.  Of course, the
restart markers occupy extra space.  We recommend -restart 1 for images that
will be transmitted across unreliable networks such as Usenet.

The -smooth option filters the input to eliminate fine-scale noise.  This is
often useful when converting GIF files to JPEG: a moderate smoothing factor of
10 to 50 gets rid of dithering patterns in the input file, resulting in a
smaller JPEG file and a better-looking image.  Too large a smoothing factor
will visibly blur the image, however.

Switches for wizards:

	-baseline	Force a baseline JPEG file to be generated.  This
			clamps quantization values to 8 bits even at low
			quality settings.

	-qtables file	Use the quantization tables given in the specified
			text file.

	-qslots N[,...] Select which quantization table to use for each color
			component.

	-sample HxV[,...]  Set JPEG sampling factors for each color component.

	-scans file	Use the scan script given in the specified text file.

The "wizard" switches are intended for experimentation with JPEG.  If you
don't know what you are doing, DON'T USE THEM.  These switches are documented
further in the file wizard.doc.


DJPEG DETAILS

The basic command line switches for djpeg are:

	-colors N	Reduce image to at most N colors.  This reduces the
	or -quantize N	number of colors used in the output image, so that it
			can be displayed on a colormapped display or stored in
			a colormapped file format.  For example, if you have
			an 8-bit display, you'd need to reduce to 256 or fewer
			colors.  (-colors is the recommended name, -quantize
			is provided only for backwards compatibility.)

	-fast		Select recommended processing options for fast, low
			quality output.  (The default options are chosen for
			highest quality output.)  Currently, this is equivalent
			to "-dct fast -nosmooth -onepass -dither ordered".

	-grayscale	Force gray-scale output even if JPEG file is color.
			Useful for viewing on monochrome displays; also,
			djpeg runs noticeably faster in this mode.

	-scale M/N	Scale the output image by a factor M/N.  Currently
			the scale factor must be 1/1, 1/2, 1/4, or 1/8.
			Scaling is handy if the image is larger than your
			screen; also, djpeg runs much faster when scaling
			down the output.

	-bmp		Select BMP output format (Windows flavor).  8-bit
			colormapped format is emitted if -colors or -grayscale
			is specified, or if the JPEG file is gray-scale;
			otherwise, 24-bit full-color format is emitted.

	-gif		Select GIF output format.  Since GIF does not support
			more than 256 colors, -colors 256 is assumed (unless
			you specify a smaller number of colors).  If you
			specify -fast, the default number of colors is 216.

	-os2		Select BMP output format (OS/2 1.x flavor).  8-bit
			colormapped format is emitted if -colors or -grayscale
			is specified, or if the JPEG file is gray-scale;
			otherwise, 24-bit full-color format is emitted.

	-pnm		Select PBMPLUS (PPM/PGM) output format (this is the
			default format).  PGM is emitted if the JPEG file is
			gray-scale or if -grayscale is specified; otherwise
			PPM is emitted.

	-rle		Select RLE output format.  (Requires URT library.)

	-targa		Select Targa output format.  Gray-scale format is
			emitted if the JPEG file is gray-scale or if
			-grayscale is specified; otherwise, colormapped format
			is emitted if -colors is specified; otherwise, 24-bit
			full-color format is emitted.

Switches for advanced users:

	-dct int	Use integer DCT method (default).
	-dct fast	Use fast integer DCT (less accurate).
	-dct float	Use floating-point DCT method.
			The float method is very slightly more accurate than
			the int method, but is much slower unless your machine
			has very fast floating-point hardware.  Also note that
			results of the floating-point method may vary slightly
			across machines, while the integer methods should give
			the same results everywhere.  The fast integer method
			is much less accurate than the other two.

	-dither fs	Use Floyd-Steinberg dithering in color quantization.
	-dither ordered	Use ordered dithering in color quantization.
	-dither none	Do not use dithering in color quantization.
			By default, Floyd-Steinberg dithering is applied when
			quantizing colors; this is slow but usually produces
			the best results.  Ordered dither is a compromise
			between speed and quality; no dithering is fast but
			usually looks awful.  Note that these switches have
			no effect unless color quantization is being done.
			Ordered dither is only available in -onepass mode.

	-map FILE	Quantize to the colors used in the specified image
			file.  This is useful for producing multiple files
			with identical color maps, or for forcing a predefined
			set of colors to be used.  The FILE must be a GIF
			or PPM file.  This option overrides -colors and
			-onepass.

	-nosmooth	Use a faster, lower-quality upsampling routine.

	-onepass	Use one-pass instead of two-pass color quantization.
			The one-pass method is faster and needs less memory,
			but it produces a lower-quality image.  -onepass is
			ignored unless you also say -colors N.  Also,
			the one-pass method is always used for gray-scale
			output (the two-pass method is no improvement then).

	-maxmemory N	Set limit for amount of memory to use in processing
			large images.  Value is in thousands of bytes, or
			millions of bytes if "M" is attached to the number.
			For example, -max 4m selects 4000000 bytes.  If more
			space is needed, temporary files will be used.

	-verbose	Enable debug printout.  More -v's give more printout.
	or  -debug	Also, version information is printed at startup.


HINTS FOR CJPEG

Color GIF files are not the ideal input for JPEG; JPEG is really intended for
compressing full-color (24-bit) images.  In particular, don't try to convert
cartoons, line drawings, and other images that have only a few distinct
colors.  GIF works great on these, JPEG does not.  If you want to convert a
GIF to JPEG, you should experiment with cjpeg's -quality and -smooth options
to get a satisfactory conversion.  -smooth 10 or so is often helpful.

Avoid running an image through a series of JPEG compression/decompression
cycles.  Image quality loss will accumulate; after ten or so cycles the image
may be noticeably worse than it was after one cycle.  It's best to use a
lossless format while manipulating an image, then convert to JPEG format when
you are ready to file the image away.

The -optimize option to cjpeg is worth using when you are making a "final"
version for posting or archiving.  It's also a win when you are using low
quality settings to make very small JPEG files; the percentage improvement
is often a lot more than it is on larger files.  (At present, -optimize
mode is always selected when generating progressive JPEG files.)


HINTS FOR DJPEG

To get a quick preview of an image, use the -grayscale and/or -scale switches.
"-grayscale -scale 1/8" is the fastest case.

Several options are available that trade off image quality to gain speed.
"-fast" turns on the recommended settings.

"-dct fast" and/or "-nosmooth" gain speed at a small sacrifice in quality.
When producing a color-quantized image, "-onepass -dither ordered" is fast but
much lower quality than the default behavior.  "-dither none" may give
acceptable results in two-pass mode, but is seldom tolerable in one-pass mode.

If you are fortunate enough to have very fast floating point hardware,
"-dct float" may be even faster than "-dct fast".  But on most machines
"-dct float" is slower than "-dct int"; in this case it is not worth using,
because its theoretical accuracy advantage is too small to be significant
in practice.

Two-pass color quantization requires a good deal of memory; on MS-DOS machines
it may run out of memory even with -maxmemory 0.  In that case you can still
decompress, with some loss of image quality, by specifying -onepass for
one-pass quantization.


HINTS FOR BOTH PROGRAMS

If more space is needed than will fit in the available main memory (as
determined by -maxmemory), temporary files will be used.  (MS-DOS versions
will try to get extended or expanded memory first.)  The temporary files are
often rather large: in typical cases they occupy three bytes per pixel, for
example 3*800*600 = 1.44Mb for an 800x600 image.  If you don't have enough
free disk space, leave out -progressive and -optimize (for cjpeg) or specify
-onepass (for djpeg).

On MS-DOS, the temporary files are created in the directory named by the TMP
or TEMP environment variable, or in the current directory if neither of those
exist.  Amiga implementations put the temp files in the directory named by
JPEGTMP:, so be sure to assign JPEGTMP: to a disk partition with adequate free
space.

The default memory usage limit (-maxmemory) is set when the software is
compiled.  If you get an "insufficient memory" error, try specifying a smaller
-maxmemory value, even -maxmemory 0 to use the absolute minimum space.  You
may want to recompile with a smaller default value if this happens often.

On machines that have "environment" variables, you can define the environment
variable JPEGMEM to set the default memory limit.  The value is specified as
described for the -maxmemory switch.  JPEGMEM overrides the default value
specified when the program was compiled, and itself is overridden by an
explicit -maxmemory switch.

On MS-DOS machines, -maxmemory is the amount of main (conventional) memory to
use.  (Extended or expanded memory is also used if available.)  Most
DOS-specific versions of this software do their own memory space estimation
and do not need you to specify -maxmemory.


JPEGTRAN

jpegtran translates JPEG files from one variant of JPEG to another, for
example from baseline JPEG to progressive JPEG or vice versa.  The
transformation is lossless: no image degradation occurs, which would not
be true if you used djpeg followed by cjpeg.  However, you cannot alter
the image quality, because that would not be a lossless operation.

jpegtran operates similarly to cjpeg, except that it reads a JPEG file
and writes another JPEG file.

jpegtran accepts a subset of the switches recognized by cjpeg:
	-outfile filename
	-optimize
	-progressive
	-restart N
	-scans file
	-maxmemory N
	-verbose
	-debug
See the previous discussion of cjpeg for details about these switches.

If you specify no switches, you get a plain baseline-JPEG output file.


THE COMMENT UTILITIES

The JPEG standard allows "comment" (COM) blocks to occur within a JPEG file.
Although the standard doesn't actually define what COM blocks are for, they
are widely used to hold user-supplied text strings.  This lets you add
annotations, titles, index terms, etc to your JPEG files, and later retrieve
them as text.  COM blocks do not interfere with the image stored in the JPEG
file.  The maximum size of a COM block is 64K, but you can have as many of
them as you like in one JPEG file.

We provide two utility programs to display COM block contents and add COM
blocks to a JPEG file.

rdjpgcom searches a JPEG file and prints the contents of any COM blocks on
standard output.  The command line syntax is
	rdjpgcom [-verbose] [inputfilename]
The switch "-verbose" (or just "-v") causes rdjpgcom to also display the JPEG
image dimensions.  If you omit the input file name from the command line,
the JPEG file is read from standard input.  (This may not work on some
operating systems, if binary data can't be read from stdin.)

wrjpgcom adds a COM block, containing text you provide, to a JPEG file.
Ordinarily, the COM block is added after any existing COM blocks, but you
can delete the old COM blocks if you wish.  wrjpgcom produces a new JPEG
file; it does not modify the input file.  DO NOT try to overwrite the input
file by directing wrjpgcom's output back into it; on most systems this will
just destroy your file.

The command line syntax for wrjpgcom is similar to cjpeg's.  On Unix-like
systems, it is
	wrjpgcom [switches] [inputfilename]
The output file is written to standard output.  The input file comes from
the named file, or from standard input if no input file is named.

On most non-Unix systems, the syntax is
	wrjpgcom [switches] inputfilename outputfilename
where both input and output file names must be given explicitly.

wrjpgcom understands three switches:
	-replace		 Delete any existing COM blocks from the file.
	-comment "Comment text"	 Supply new COM text on command line.
        -cfile name		 Read text for new COM block from named file.
(Switch names can be abbreviated.)  If you have only one line of comment text
to add, you can provide it on the command line with -comment.  The comment
text must be surrounded with quotes so that it is treated as a single
argument.  Longer comments can be read from a text file.

If you give neither -comment nor -cfile, then wrjpgcom will read the comment
text from standard input.  (In this case an input image file name MUST be
supplied, so that the source JPEG file comes from somewhere else.)  You can
enter multiple lines, up to 64KB worth.  Type an end-of-file indicator
(usually control-D or control-Z) to terminate the comment text entry.

wrjpgcom will not add a COM block if the provided comment string is empty.
Therefore -replace -comment "" can be used to delete all COM blocks from a
file.

These utility programs do not depend on the IJG JPEG library.  In
particular, the source code for rdjpgcom is intended as an illustration of
the minimum amount of code required to parse a JPEG file header correctly.
00000000  55 53 41 47 45 20 69 6e  73 74 72 75 63 74 69 6f  |USAGE instructio|
00000010  6e 73 20 66 6f 72 20 74  68 65 20 49 6e 64 65 70  |ns for the Indep|
00000020  65 6e 64 65 6e 74 20 4a  50 45 47 20 47 72 6f 75  |endent JPEG Grou|
00000030  70 27 73 20 4a 50 45 47  20 73 6f 66 74 77 61 72  |p's JPEG softwar|
00000040  65 0a 3d 3d 3d 3d 3d 3d  3d 3d 3d 3d 3d 3d 3d 3d  |e.==============|
00000050  3d 3d 3d 3d 3d 3d 3d 3d  3d 3d 3d 3d 3d 3d 3d 3d  |================|
*
00000080  3d 3d 3d 0a 0a 54 68 69  73 20 66 69 6c 65 20 64  |===..This file d|
00000090  65 73 63 72 69 62 65 73  20 75 73 61 67 65 20 6f  |escribes usage o|
000000a0  66 20 74 68 65 20 4a 50  45 47 20 63 6f 6e 76 65  |f the JPEG conve|
000000b0  72 73 69 6f 6e 20 70 72  6f 67 72 61 6d 73 20 63  |rsion programs c|
000000c0  6a 70 65 67 20 61 6e 64  20 64 6a 70 65 67 2c 0a  |jpeg and djpeg,.|
000000d0  61 73 20 77 65 6c 6c 20  61 73 20 74 68 65 20 75  |as well as the u|
000000e0  74 69 6c 69 74 79 20 70  72 6f 67 72 61 6d 73 20  |tility programs |
000000f0  6a 70 65 67 74 72 61 6e  2c 20 72 64 6a 70 67 63  |jpegtran, rdjpgc|
00000100  6f 6d 20 61 6e 64 20 77  72 6a 70 67 63 6f 6d 2e  |om and wrjpgcom.|
00000110  20 20 28 53 65 65 0a 74  68 65 20 6f 74 68 65 72  |  (See.the other|
00000120  20 64 6f 63 75 6d 65 6e  74 61 74 69 6f 6e 20 66  | documentation f|
00000130  69 6c 65 73 20 69 66 20  79 6f 75 20 77 69 73 68  |iles if you wish|
00000140  20 74 6f 20 75 73 65 20  74 68 65 20 4a 50 45 47  | to use the JPEG|
00000150  20 6c 69 62 72 61 72 79  20 77 69 74 68 69 6e 0a  | library within.|
00000160  79 6f 75 72 20 6f 77 6e  20 70 72 6f 67 72 61 6d  |your own program|
00000170  73 2e 29 0a 0a 49 66 20  79 6f 75 20 61 72 65 20  |s.)..If you are |
00000180  6f 6e 20 61 20 55 6e 69  78 20 6d 61 63 68 69 6e  |on a Unix machin|
00000190  65 20 79 6f 75 20 6d 61  79 20 70 72 65 66 65 72  |e you may prefer|
000001a0  20 74 6f 20 72 65 61 64  20 74 68 65 20 55 6e 69  | to read the Uni|
000001b0  78 2d 73 74 79 6c 65 20  6d 61 6e 75 61 6c 0a 70  |x-style manual.p|
000001c0  61 67 65 73 20 69 6e 20  66 69 6c 65 73 20 63 6a  |ages in files cj|
000001d0  70 65 67 2e 31 2c 20 64  6a 70 65 67 2e 31 2c 20  |peg.1, djpeg.1, |
000001e0  6a 70 65 67 74 72 61 6e  2e 31 2c 20 72 64 6a 70  |jpegtran.1, rdjp|
000001f0  67 63 6f 6d 2e 31 2c 20  77 72 6a 70 67 63 6f 6d  |gcom.1, wrjpgcom|
00000200  2e 31 2e 0a 0a 0a 49 4e  54 52 4f 44 55 43 54 49  |.1....INTRODUCTI|
00000210  4f 4e 0a 0a 54 68 65 73  65 20 70 72 6f 67 72 61  |ON..These progra|
00000220  6d 73 20 69 6d 70 6c 65  6d 65 6e 74 20 4a 50 45  |ms implement JPE|
00000230  47 20 69 6d 61 67 65 20  63 6f 6d 70 72 65 73 73  |G image compress|
00000240  69 6f 6e 20 61 6e 64 20  64 65 63 6f 6d 70 72 65  |ion and decompre|
00000250  73 73 69 6f 6e 2e 20 20  4a 50 45 47 0a 28 70 72  |ssion.  JPEG.(pr|
00000260  6f 6e 6f 75 6e 63 65 64  20 22 6a 61 79 2d 70 65  |onounced "jay-pe|
00000270  67 22 29 20 69 73 20 61  20 73 74 61 6e 64 61 72  |g") is a standar|
00000280  64 69 7a 65 64 20 63 6f  6d 70 72 65 73 73 69 6f  |dized compressio|
00000290  6e 20 6d 65 74 68 6f 64  20 66 6f 72 20 66 75 6c  |n method for ful|
000002a0  6c 2d 63 6f 6c 6f 72 0a  61 6e 64 20 67 72 61 79  |l-color.and gray|
000002b0  2d 73 63 61 6c 65 20 69  6d 61 67 65 73 2e 20 20  |-scale images.  |
000002c0  4a 50 45 47 20 69 73 20  64 65 73 69 67 6e 65 64  |JPEG is designed|
000002d0  20 74 6f 20 68 61 6e 64  6c 65 20 22 72 65 61 6c  | to handle "real|
000002e0  2d 77 6f 72 6c 64 22 20  73 63 65 6e 65 73 2c 0a  |-world" scenes,.|
000002f0  66 6f 72 20 65 78 61 6d  70 6c 65 20 73 63 61 6e  |for example scan|
00000300  6e 65 64 20 70 68 6f 74  6f 67 72 61 70 68 73 2e  |ned photographs.|
00000310  20 20 43 61 72 74 6f 6f  6e 73 2c 20 6c 69 6e 65  |  Cartoons, line|
00000320  20 64 72 61 77 69 6e 67  73 2c 20 61 6e 64 20 6f  | drawings, and o|
00000330  74 68 65 72 0a 6e 6f 6e  2d 72 65 61 6c 69 73 74  |ther.non-realist|
00000340  69 63 20 69 6d 61 67 65  73 20 61 72 65 20 6e 6f  |ic images are no|
00000350  74 20 4a 50 45 47 27 73  20 73 74 72 6f 6e 67 20  |t JPEG's strong |
00000360  73 75 69 74 3b 20 6f 6e  20 74 68 61 74 20 73 6f  |suit; on that so|
00000370  72 74 20 6f 66 20 6d 61  74 65 72 69 61 6c 0a 79  |rt of material.y|
00000380  6f 75 20 6d 61 79 20 67  65 74 20 70 6f 6f 72 20  |ou may get poor |
00000390  69 6d 61 67 65 20 71 75  61 6c 69 74 79 20 61 6e  |image quality an|
000003a0  64 2f 6f 72 20 6c 69 74  74 6c 65 20 63 6f 6d 70  |d/or little comp|
000003b0  72 65 73 73 69 6f 6e 2e  0a 0a 4a 50 45 47 20 69  |ression...JPEG i|
000003c0  73 20 6c 6f 73 73 79 2c  20 6d 65 61 6e 69 6e 67  |s lossy, meaning|
000003d0  20 74 68 61 74 20 74 68  65 20 6f 75 74 70 75 74  | that the output|
000003e0  20 69 6d 61 67 65 20 69  73 20 6e 6f 74 20 6e 65  | image is not ne|
000003f0  63 65 73 73 61 72 69 6c  79 20 69 64 65 6e 74 69  |cessarily identi|
00000400  63 61 6c 20 74 6f 0a 74  68 65 20 69 6e 70 75 74  |cal to.the input|
00000410  20 69 6d 61 67 65 2e 20  20 48 65 6e 63 65 20 79  | image.  Hence y|
00000420  6f 75 20 73 68 6f 75 6c  64 20 6e 6f 74 20 75 73  |ou should not us|
00000430  65 20 4a 50 45 47 20 69  66 20 79 6f 75 20 68 61  |e JPEG if you ha|
00000440  76 65 20 74 6f 20 68 61  76 65 20 69 64 65 6e 74  |ve to have ident|
00000450  69 63 61 6c 0a 6f 75 74  70 75 74 20 62 69 74 73  |ical.output bits|
00000460  2e 20 20 48 6f 77 65 76  65 72 2c 20 6f 6e 20 74  |.  However, on t|
00000470  79 70 69 63 61 6c 20 72  65 61 6c 2d 77 6f 72 6c  |ypical real-worl|
00000480  64 20 69 6d 61 67 65 73  2c 20 76 65 72 79 20 67  |d images, very g|
00000490  6f 6f 64 20 63 6f 6d 70  72 65 73 73 69 6f 6e 0a  |ood compression.|
000004a0  6c 65 76 65 6c 73 20 63  61 6e 20 62 65 20 6f 62  |levels can be ob|
000004b0  74 61 69 6e 65 64 20 77  69 74 68 20 6e 6f 20 76  |tained with no v|
000004c0  69 73 69 62 6c 65 20 63  68 61 6e 67 65 2c 20 61  |isible change, a|
000004d0  6e 64 20 61 6d 61 7a 69  6e 67 6c 79 20 68 69 67  |nd amazingly hig|
000004e0  68 20 63 6f 6d 70 72 65  73 73 69 6f 6e 0a 69 73  |h compression.is|
000004f0  20 70 6f 73 73 69 62 6c  65 20 69 66 20 79 6f 75  | possible if you|
00000500  20 63 61 6e 20 74 6f 6c  65 72 61 74 65 20 61 20  | can tolerate a |
00000510  6c 6f 77 2d 71 75 61 6c  69 74 79 20 69 6d 61 67  |low-quality imag|
00000520  65 2e 20 20 59 6f 75 20  63 61 6e 20 74 72 61 64  |e.  You can trad|
00000530  65 20 6f 66 66 20 69 6d  61 67 65 0a 71 75 61 6c  |e off image.qual|
00000540  69 74 79 20 61 67 61 69  6e 73 74 20 66 69 6c 65  |ity against file|
00000550  20 73 69 7a 65 20 62 79  20 61 64 6a 75 73 74 69  | size by adjusti|
00000560  6e 67 20 74 68 65 20 63  6f 6d 70 72 65 73 73 6f  |ng the compresso|
00000570  72 27 73 20 22 71 75 61  6c 69 74 79 22 20 73 65  |r's "quality" se|
00000580  74 74 69 6e 67 2e 0a 0a  0a 47 45 4e 45 52 41 4c  |tting....GENERAL|
00000590  20 55 53 41 47 45 0a 0a  57 65 20 70 72 6f 76 69  | USAGE..We provi|
000005a0  64 65 20 74 77 6f 20 70  72 6f 67 72 61 6d 73 2c  |de two programs,|
000005b0  20 63 6a 70 65 67 20 74  6f 20 63 6f 6d 70 72 65  | cjpeg to compre|
000005c0  73 73 20 61 6e 20 69 6d  61 67 65 20 66 69 6c 65  |ss an image file|
000005d0  20 69 6e 74 6f 20 4a 50  45 47 20 66 6f 72 6d 61  | into JPEG forma|
000005e0  74 2c 0a 61 6e 64 20 64  6a 70 65 67 20 74 6f 20  |t,.and djpeg to |
000005f0  64 65 63 6f 6d 70 72 65  73 73 20 61 20 4a 50 45  |decompress a JPE|
00000600  47 20 66 69 6c 65 20 62  61 63 6b 20 69 6e 74 6f  |G file back into|
00000610  20 61 20 63 6f 6e 76 65  6e 74 69 6f 6e 61 6c 20  | a conventional |
00000620  69 6d 61 67 65 20 66 6f  72 6d 61 74 2e 0a 0a 4f  |image format...O|
00000630  6e 20 55 6e 69 78 2d 6c  69 6b 65 20 73 79 73 74  |n Unix-like syst|
00000640  65 6d 73 2c 20 79 6f 75  20 73 61 79 3a 0a 09 63  |ems, you say:..c|
00000650  6a 70 65 67 20 5b 73 77  69 74 63 68 65 73 5d 20  |jpeg [switches] |
00000660  5b 69 6d 61 67 65 66 69  6c 65 5d 20 3e 6a 70 65  |[imagefile] >jpe|
00000670  67 66 69 6c 65 0a 6f 72  0a 09 64 6a 70 65 67 20  |gfile.or..djpeg |
00000680  5b 73 77 69 74 63 68 65  73 5d 20 5b 6a 70 65 67  |[switches] [jpeg|
00000690  66 69 6c 65 5d 20 20 3e  69 6d 61 67 65 66 69 6c  |file]  >imagefil|
000006a0  65 0a 54 68 65 20 70 72  6f 67 72 61 6d 73 20 72  |e.The programs r|
000006b0  65 61 64 20 74 68 65 20  73 70 65 63 69 66 69 65  |ead the specifie|
000006c0  64 20 69 6e 70 75 74 20  66 69 6c 65 2c 20 6f 72  |d input file, or|
000006d0  20 73 74 61 6e 64 61 72  64 20 69 6e 70 75 74 20  | standard input |
000006e0  69 66 20 6e 6f 6e 65 20  69 73 0a 6e 61 6d 65 64  |if none is.named|
000006f0  2e 20 20 54 68 65 79 20  61 6c 77 61 79 73 20 77  |.  They always w|
00000700  72 69 74 65 20 74 6f 20  73 74 61 6e 64 61 72 64  |rite to standard|
00000710  20 6f 75 74 70 75 74 20  28 77 69 74 68 20 74 72  | output (with tr|
00000720  61 63 65 2f 65 72 72 6f  72 20 6d 65 73 73 61 67  |ace/error messag|
00000730  65 73 20 74 6f 0a 73 74  61 6e 64 61 72 64 20 65  |es to.standard e|
00000740  72 72 6f 72 29 2e 20 20  54 68 65 73 65 20 63 6f  |rror).  These co|
00000750  6e 76 65 6e 74 69 6f 6e  73 20 61 72 65 20 68 61  |nventions are ha|
00000760  6e 64 79 20 66 6f 72 20  70 69 70 69 6e 67 20 69  |ndy for piping i|
00000770  6d 61 67 65 73 20 62 65  74 77 65 65 6e 0a 70 72  |mages between.pr|
00000780  6f 67 72 61 6d 73 2e 0a  0a 4f 6e 20 6d 6f 73 74  |ograms...On most|
00000790  20 6e 6f 6e 2d 55 6e 69  78 20 73 79 73 74 65 6d  | non-Unix system|
000007a0  73 2c 20 79 6f 75 20 73  61 79 3a 0a 09 63 6a 70  |s, you say:..cjp|
000007b0  65 67 20 5b 73 77 69 74  63 68 65 73 5d 20 69 6d  |eg [switches] im|
000007c0  61 67 65 66 69 6c 65 20  6a 70 65 67 66 69 6c 65  |agefile jpegfile|
000007d0  0a 6f 72 0a 09 64 6a 70  65 67 20 5b 73 77 69 74  |.or..djpeg [swit|
000007e0  63 68 65 73 5d 20 6a 70  65 67 66 69 6c 65 20 20  |ches] jpegfile  |
000007f0  69 6d 61 67 65 66 69 6c  65 0a 69 2e 65 2e 2c 20  |imagefile.i.e., |
00000800  62 6f 74 68 20 74 68 65  20 69 6e 70 75 74 20 61  |both the input a|
00000810  6e 64 20 6f 75 74 70 75  74 20 66 69 6c 65 73 20  |nd output files |
00000820  61 72 65 20 6e 61 6d 65  64 20 6f 6e 20 74 68 65  |are named on the|
00000830  20 63 6f 6d 6d 61 6e 64  20 6c 69 6e 65 2e 20 20  | command line.  |
00000840  54 68 69 73 0a 73 74 79  6c 65 20 69 73 20 61 20  |This.style is a |
00000850  6c 69 74 74 6c 65 20 6d  6f 72 65 20 66 6f 6f 6c  |little more fool|
00000860  70 72 6f 6f 66 2c 20 61  6e 64 20 69 74 20 6c 6f  |proof, and it lo|
00000870  73 65 73 20 6e 6f 20 66  75 6e 63 74 69 6f 6e 61  |ses no functiona|
00000880  6c 69 74 79 20 69 66 20  79 6f 75 20 64 6f 6e 27  |lity if you don'|
00000890  74 0a 68 61 76 65 20 70  69 70 65 73 2e 20 20 28  |t.have pipes.  (|
000008a0  59 6f 75 20 63 61 6e 20  67 65 74 20 74 68 69 73  |You can get this|
000008b0  20 73 74 79 6c 65 20 6f  6e 20 55 6e 69 78 20 74  | style on Unix t|
000008c0  6f 6f 2c 20 69 66 20 79  6f 75 20 70 72 65 66 65  |oo, if you prefe|
000008d0  72 2c 20 62 79 20 64 65  66 69 6e 69 6e 67 0a 54  |r, by defining.T|
000008e0  57 4f 5f 46 49 4c 45 5f  43 4f 4d 4d 41 4e 44 4c  |WO_FILE_COMMANDL|
000008f0  49 4e 45 20 77 68 65 6e  20 79 6f 75 20 63 6f 6d  |INE when you com|
00000900  70 69 6c 65 20 74 68 65  20 70 72 6f 67 72 61 6d  |pile the program|
00000910  73 3b 20 73 65 65 20 69  6e 73 74 61 6c 6c 2e 64  |s; see install.d|
00000920  6f 63 2e 29 0a 0a 59 6f  75 20 63 61 6e 20 61 6c  |oc.)..You can al|
00000930  73 6f 20 73 61 79 3a 0a  09 63 6a 70 65 67 20 5b  |so say:..cjpeg [|
00000940  73 77 69 74 63 68 65 73  5d 20 2d 6f 75 74 66 69  |switches] -outfi|
00000950  6c 65 20 6a 70 65 67 66  69 6c 65 20 20 69 6d 61  |le jpegfile  ima|
00000960  67 65 66 69 6c 65 0a 6f  72 0a 09 64 6a 70 65 67  |gefile.or..djpeg|
00000970  20 5b 73 77 69 74 63 68  65 73 5d 20 2d 6f 75 74  | [switches] -out|
00000980  66 69 6c 65 20 69 6d 61  67 65 66 69 6c 65 20 20  |file imagefile  |
00000990  6a 70 65 67 66 69 6c 65  0a 54 68 69 73 20 73 79  |jpegfile.This sy|
000009a0  6e 74 61 78 20 77 6f 72  6b 73 20 6f 6e 20 61 6c  |ntax works on al|
000009b0  6c 20 73 79 73 74 65 6d  73 2c 20 73 6f 20 69 74  |l systems, so it|
000009c0  20 69 73 20 75 73 65 66  75 6c 20 66 6f 72 20 73  | is useful for s|
000009d0  63 72 69 70 74 73 2e 0a  0a 54 68 65 20 63 75 72  |cripts...The cur|
000009e0  72 65 6e 74 6c 79 20 73  75 70 70 6f 72 74 65 64  |rently supported|
000009f0  20 69 6d 61 67 65 20 66  69 6c 65 20 66 6f 72 6d  | image file form|
00000a00  61 74 73 20 61 72 65 3a  20 50 50 4d 20 28 50 42  |ats are: PPM (PB|
00000a10  4d 50 4c 55 53 20 63 6f  6c 6f 72 20 66 6f 72 6d  |MPLUS color form|
00000a20  61 74 29 2c 0a 50 47 4d  20 28 50 42 4d 50 4c 55  |at),.PGM (PBMPLU|
00000a30  53 20 67 72 61 79 2d 73  63 61 6c 65 20 66 6f 72  |S gray-scale for|
00000a40  6d 61 74 29 2c 20 42 4d  50 2c 20 47 49 46 2c 20  |mat), BMP, GIF, |
00000a50  54 61 72 67 61 2c 20 61  6e 64 20 52 4c 45 20 28  |Targa, and RLE (|
00000a60  55 74 61 68 20 52 61 73  74 65 72 20 54 6f 6f 6c  |Utah Raster Tool|
00000a70  6b 69 74 0a 66 6f 72 6d  61 74 29 2e 20 20 28 52  |kit.format).  (R|
00000a80  4c 45 20 69 73 20 73 75  70 70 6f 72 74 65 64 20  |LE is supported |
00000a90  6f 6e 6c 79 20 69 66 20  74 68 65 20 55 52 54 20  |only if the URT |
00000aa0  6c 69 62 72 61 72 79 20  69 73 20 61 76 61 69 6c  |library is avail|
00000ab0  61 62 6c 65 2e 29 0a 63  6a 70 65 67 20 72 65 63  |able.).cjpeg rec|
00000ac0  6f 67 6e 69 7a 65 73 20  74 68 65 20 69 6e 70 75  |ognizes the inpu|
00000ad0  74 20 69 6d 61 67 65 20  66 6f 72 6d 61 74 20 61  |t image format a|
00000ae0  75 74 6f 6d 61 74 69 63  61 6c 6c 79 2c 20 77 69  |utomatically, wi|
00000af0  74 68 20 74 68 65 20 65  78 63 65 70 74 69 6f 6e  |th the exception|
00000b00  0a 6f 66 20 73 6f 6d 65  20 54 61 72 67 61 2d 66  |.of some Targa-f|
00000b10  6f 72 6d 61 74 20 66 69  6c 65 73 2e 20 20 59 6f  |ormat files.  Yo|
00000b20  75 20 68 61 76 65 20 74  6f 20 74 65 6c 6c 20 64  |u have to tell d|
00000b30  6a 70 65 67 20 77 68 69  63 68 20 66 6f 72 6d 61  |jpeg which forma|
00000b40  74 20 74 6f 20 67 65 6e  65 72 61 74 65 2e 0a 0a  |t to generate...|
00000b50  4a 50 45 47 20 66 69 6c  65 73 20 61 72 65 20 69  |JPEG files are i|
00000b60  6e 20 74 68 65 20 64 65  66 61 63 74 6f 20 73 74  |n the defacto st|
00000b70  61 6e 64 61 72 64 20 4a  46 49 46 20 66 69 6c 65  |andard JFIF file|
00000b80  20 66 6f 72 6d 61 74 2e  20 20 54 68 65 72 65 20  | format.  There |
00000b90  61 72 65 20 6f 74 68 65  72 2c 0a 6c 65 73 73 20  |are other,.less |
00000ba0  77 69 64 65 6c 79 20 75  73 65 64 20 4a 50 45 47  |widely used JPEG|
00000bb0  2d 62 61 73 65 64 20 66  69 6c 65 20 66 6f 72 6d  |-based file form|
00000bc0  61 74 73 2c 20 62 75 74  20 77 65 20 64 6f 6e 27  |ats, but we don'|
00000bd0  74 20 73 75 70 70 6f 72  74 20 74 68 65 6d 2e 0a  |t support them..|
00000be0  0a 41 6c 6c 20 73 77 69  74 63 68 20 6e 61 6d 65  |.All switch name|
00000bf0  73 20 6d 61 79 20 62 65  20 61 62 62 72 65 76 69  |s may be abbrevi|
00000c00  61 74 65 64 3b 20 66 6f  72 20 65 78 61 6d 70 6c  |ated; for exampl|
00000c10  65 2c 20 2d 67 72 61 79  73 63 61 6c 65 20 6d 61  |e, -grayscale ma|
00000c20  79 20 62 65 20 77 72 69  74 74 65 6e 0a 2d 67 72  |y be written.-gr|
00000c30  61 79 20 6f 72 20 2d 67  72 2e 20 20 4d 6f 73 74  |ay or -gr.  Most|
00000c40  20 6f 66 20 74 68 65 20  22 62 61 73 69 63 22 20  | of the "basic" |
00000c50  73 77 69 74 63 68 65 73  20 63 61 6e 20 62 65 20  |switches can be |
00000c60  61 62 62 72 65 76 69 61  74 65 64 20 74 6f 20 61  |abbreviated to a|
00000c70  73 20 6c 69 74 74 6c 65  20 61 73 0a 6f 6e 65 20  |s little as.one |
00000c80  6c 65 74 74 65 72 2e 20  20 55 70 70 65 72 20 61  |letter.  Upper a|
00000c90  6e 64 20 6c 6f 77 65 72  20 63 61 73 65 20 61 72  |nd lower case ar|
00000ca0  65 20 65 71 75 69 76 61  6c 65 6e 74 20 28 2d 47  |e equivalent (-G|
00000cb0  49 46 20 69 73 20 74 68  65 20 73 61 6d 65 20 61  |IF is the same a|
00000cc0  73 20 2d 67 69 66 29 2e  0a 42 72 69 74 69 73 68  |s -gif)..British|
00000cd0  20 73 70 65 6c 6c 69 6e  67 73 20 61 72 65 20 61  | spellings are a|
00000ce0  6c 73 6f 20 61 63 63 65  70 74 65 64 20 28 65 2e  |lso accepted (e.|
00000cf0  67 2e 2c 20 2d 67 72 65  79 73 63 61 6c 65 29 2c  |g., -greyscale),|
00000d00  20 74 68 6f 75 67 68 20  66 6f 72 20 62 72 65 76  | though for brev|
00000d10  69 74 79 0a 74 68 65 73  65 20 61 72 65 20 6e 6f  |ity.these are no|
00000d20  74 20 6d 65 6e 74 69 6f  6e 65 64 20 62 65 6c 6f  |t mentioned belo|
00000d30  77 2e 0a 0a 0a 43 4a 50  45 47 20 44 45 54 41 49  |w....CJPEG DETAI|
00000d40  4c 53 0a 0a 54 68 65 20  62 61 73 69 63 20 63 6f  |LS..The basic co|
00000d50  6d 6d 61 6e 64 20 6c 69  6e 65 20 73 77 69 74 63  |mmand line switc|
00000d60  68 65 73 20 66 6f 72 20  63 6a 70 65 67 20 61 72  |hes for cjpeg ar|
00000d70  65 3a 0a 0a 09 2d 71 75  61 6c 69 74 79 20 4e 09  |e:...-quality N.|
00000d80  53 63 61 6c 65 20 71 75  61 6e 74 69 7a 61 74 69  |Scale quantizati|
00000d90  6f 6e 20 74 61 62 6c 65  73 20 74 6f 20 61 64 6a  |on tables to adj|
00000da0  75 73 74 20 69 6d 61 67  65 20 71 75 61 6c 69 74  |ust image qualit|
00000db0  79 2e 0a 09 09 09 51 75  61 6c 69 74 79 20 69 73  |y.....Quality is|
00000dc0  20 30 20 28 77 6f 72 73  74 29 20 74 6f 20 31 30  | 0 (worst) to 10|
00000dd0  30 20 28 62 65 73 74 29  3b 20 64 65 66 61 75 6c  |0 (best); defaul|
00000de0  74 20 69 73 20 37 35 2e  0a 09 09 09 28 53 65 65  |t is 75.....(See|
00000df0  20 62 65 6c 6f 77 20 66  6f 72 20 6d 6f 72 65 20  | below for more |
00000e00  69 6e 66 6f 2e 29 0a 0a  09 2d 67 72 61 79 73 63  |info.)...-graysc|
00000e10  61 6c 65 09 43 72 65 61  74 65 20 6d 6f 6e 6f 63  |ale.Create monoc|
00000e20  68 72 6f 6d 65 20 4a 50  45 47 20 66 69 6c 65 20  |hrome JPEG file |
00000e30  66 72 6f 6d 20 63 6f 6c  6f 72 20 69 6e 70 75 74  |from color input|
00000e40  2e 0a 09 09 09 42 65 20  73 75 72 65 20 74 6f 20  |.....Be sure to |
00000e50  75 73 65 20 74 68 69 73  20 73 77 69 74 63 68 20  |use this switch |
00000e60  77 68 65 6e 20 63 6f 6d  70 72 65 73 73 69 6e 67  |when compressing|
00000e70  20 61 20 67 72 61 79 73  63 61 6c 65 0a 09 09 09  | a grayscale....|
00000e80  47 49 46 20 66 69 6c 65  2c 20 62 65 63 61 75 73  |GIF file, becaus|
00000e90  65 20 63 6a 70 65 67 20  69 73 6e 27 74 20 62 72  |e cjpeg isn't br|
00000ea0  69 67 68 74 20 65 6e 6f  75 67 68 20 74 6f 20 6e  |ight enough to n|
00000eb0  6f 74 69 63 65 0a 09 09  09 77 68 65 74 68 65 72  |otice....whether|
00000ec0  20 61 20 47 49 46 20 66  69 6c 65 20 75 73 65 73  | a GIF file uses|
00000ed0  20 6f 6e 6c 79 20 73 68  61 64 65 73 20 6f 66 20  | only shades of |
00000ee0  67 72 61 79 2e 20 20 42  79 0a 09 09 09 73 61 79  |gray.  By....say|
00000ef0  69 6e 67 20 2d 67 72 61  79 73 63 61 6c 65 2c 20  |ing -grayscale, |
00000f00  79 6f 75 27 6c 6c 20 67  65 74 20 61 20 73 6d 61  |you'll get a sma|
00000f10  6c 6c 65 72 20 4a 50 45  47 20 66 69 6c 65 20 74  |ller JPEG file t|
00000f20  68 61 74 0a 09 09 09 74  61 6b 65 73 20 6c 65 73  |hat....takes les|
00000f30  73 20 74 69 6d 65 20 74  6f 20 70 72 6f 63 65 73  |s time to proces|
00000f40  73 2e 0a 0a 09 2d 6f 70  74 69 6d 69 7a 65 09 50  |s....-optimize.P|
00000f50  65 72 66 6f 72 6d 20 6f  70 74 69 6d 69 7a 61 74  |erform optimizat|
00000f60  69 6f 6e 20 6f 66 20 65  6e 74 72 6f 70 79 20 65  |ion of entropy e|
00000f70  6e 63 6f 64 69 6e 67 20  70 61 72 61 6d 65 74 65  |ncoding paramete|
00000f80  72 73 2e 0a 09 09 09 57  69 74 68 6f 75 74 20 74  |rs.....Without t|
00000f90  68 69 73 2c 20 64 65 66  61 75 6c 74 20 65 6e 63  |his, default enc|
00000fa0  6f 64 69 6e 67 20 70 61  72 61 6d 65 74 65 72 73  |oding parameters|
00000fb0  20 61 72 65 20 75 73 65  64 2e 0a 09 09 09 2d 6f  | are used.....-o|
00000fc0  70 74 69 6d 69 7a 65 20  75 73 75 61 6c 6c 79 20  |ptimize usually |
00000fd0  6d 61 6b 65 73 20 74 68  65 20 4a 50 45 47 20 66  |makes the JPEG f|
00000fe0  69 6c 65 20 61 20 6c 69  74 74 6c 65 20 73 6d 61  |ile a little sma|
00000ff0  6c 6c 65 72 2c 0a 09 09  09 62 75 74 20 63 6a 70  |ller,....but cjp|
00001000  65 67 20 72 75 6e 73 20  73 6f 6d 65 77 68 61 74  |eg runs somewhat|
00001010  20 73 6c 6f 77 65 72 20  61 6e 64 20 6e 65 65 64  | slower and need|
00001020  73 20 6d 75 63 68 20 6d  6f 72 65 0a 09 09 09 6d  |s much more....m|
00001030  65 6d 6f 72 79 2e 20 20  49 6d 61 67 65 20 71 75  |emory.  Image qu|
00001040  61 6c 69 74 79 20 61 6e  64 20 73 70 65 65 64 20  |ality and speed |
00001050  6f 66 20 64 65 63 6f 6d  70 72 65 73 73 69 6f 6e  |of decompression|
00001060  20 61 72 65 0a 09 09 09  75 6e 61 66 66 65 63 74  | are....unaffect|
00001070  65 64 20 62 79 20 2d 6f  70 74 69 6d 69 7a 65 2e  |ed by -optimize.|
00001080  0a 0a 09 2d 70 72 6f 67  72 65 73 73 69 76 65 09  |...-progressive.|
00001090  43 72 65 61 74 65 20 70  72 6f 67 72 65 73 73 69  |Create progressi|
000010a0  76 65 20 4a 50 45 47 20  66 69 6c 65 20 28 73 65  |ve JPEG file (se|
000010b0  65 20 62 65 6c 6f 77 29  2e 0a 0a 09 2d 74 61 72  |e below)....-tar|
000010c0  67 61 09 09 49 6e 70 75  74 20 66 69 6c 65 20 69  |ga..Input file i|
000010d0  73 20 54 61 72 67 61 20  66 6f 72 6d 61 74 2e 20  |s Targa format. |
000010e0  20 54 61 72 67 61 20 66  69 6c 65 73 20 74 68 61  | Targa files tha|
000010f0  74 20 63 6f 6e 74 61 69  6e 0a 09 09 09 61 6e 20  |t contain....an |
00001100  22 69 64 65 6e 74 69 66  69 63 61 74 69 6f 6e 22  |"identification"|
00001110  20 66 69 65 6c 64 20 77  69 6c 6c 20 6e 6f 74 20  | field will not |
00001120  62 65 20 61 75 74 6f 6d  61 74 69 63 61 6c 6c 79  |be automatically|
00001130  0a 09 09 09 72 65 63 6f  67 6e 69 7a 65 64 20 62  |....recognized b|
00001140  79 20 63 6a 70 65 67 3b  20 66 6f 72 20 73 75 63  |y cjpeg; for suc|
00001150  68 20 66 69 6c 65 73 20  79 6f 75 20 6d 75 73 74  |h files you must|
00001160  20 73 70 65 63 69 66 79  0a 09 09 09 2d 74 61 72  | specify....-tar|
00001170  67 61 20 74 6f 20 6d 61  6b 65 20 63 6a 70 65 67  |ga to make cjpeg|
00001180  20 74 72 65 61 74 20 74  68 65 20 69 6e 70 75 74  | treat the input|
00001190  20 61 73 20 54 61 72 67  61 20 66 6f 72 6d 61 74  | as Targa format|
000011a0  2e 0a 09 09 09 46 6f 72  20 6d 6f 73 74 20 54 61  |.....For most Ta|
000011b0  72 67 61 20 66 69 6c 65  73 2c 20 79 6f 75 20 77  |rga files, you w|
000011c0  6f 6e 27 74 20 6e 65 65  64 20 74 68 69 73 20 73  |on't need this s|
000011d0  77 69 74 63 68 2e 0a 0a  54 68 65 20 2d 71 75 61  |witch...The -qua|
000011e0  6c 69 74 79 20 73 77 69  74 63 68 20 6c 65 74 73  |lity switch lets|
000011f0  20 79 6f 75 20 74 72 61  64 65 20 6f 66 66 20 63  | you trade off c|
00001200  6f 6d 70 72 65 73 73 65  64 20 66 69 6c 65 20 73  |ompressed file s|
00001210  69 7a 65 20 61 67 61 69  6e 73 74 20 71 75 61 6c  |ize against qual|
00001220  69 74 79 20 6f 66 0a 74  68 65 20 72 65 63 6f 6e  |ity of.the recon|
00001230  73 74 72 75 63 74 65 64  20 69 6d 61 67 65 3a 20  |structed image: |
00001240  74 68 65 20 68 69 67 68  65 72 20 74 68 65 20 71  |the higher the q|
00001250  75 61 6c 69 74 79 20 73  65 74 74 69 6e 67 2c 20  |uality setting, |
00001260  74 68 65 20 6c 61 72 67  65 72 20 74 68 65 20 4a  |the larger the J|
00001270  50 45 47 0a 66 69 6c 65  2c 20 61 6e 64 20 74 68  |PEG.file, and th|
00001280  65 20 63 6c 6f 73 65 72  20 74 68 65 20 6f 75 74  |e closer the out|
00001290  70 75 74 20 69 6d 61 67  65 20 77 69 6c 6c 20 62  |put image will b|
000012a0  65 20 74 6f 20 74 68 65  20 6f 72 69 67 69 6e 61  |e to the origina|
000012b0  6c 20 69 6e 70 75 74 2e  20 20 4e 6f 72 6d 61 6c  |l input.  Normal|
000012c0  6c 79 0a 79 6f 75 20 77  61 6e 74 20 74 6f 20 75  |ly.you want to u|
000012d0  73 65 20 74 68 65 20 6c  6f 77 65 73 74 20 71 75  |se the lowest qu|
000012e0  61 6c 69 74 79 20 73 65  74 74 69 6e 67 20 28 73  |ality setting (s|
000012f0  6d 61 6c 6c 65 73 74 20  66 69 6c 65 29 20 74 68  |mallest file) th|
00001300  61 74 20 64 65 63 6f 6d  70 72 65 73 73 65 73 0a  |at decompresses.|
00001310  69 6e 74 6f 20 73 6f 6d  65 74 68 69 6e 67 20 76  |into something v|
00001320  69 73 75 61 6c 6c 79 20  69 6e 64 69 73 74 69 6e  |isually indistin|
00001330  67 75 69 73 68 61 62 6c  65 20 66 72 6f 6d 20 74  |guishable from t|
00001340  68 65 20 6f 72 69 67 69  6e 61 6c 20 69 6d 61 67  |he original imag|
00001350  65 2e 20 20 46 6f 72 20  74 68 69 73 0a 70 75 72  |e.  For this.pur|
00001360  70 6f 73 65 20 74 68 65  20 71 75 61 6c 69 74 79  |pose the quality|
00001370  20 73 65 74 74 69 6e 67  20 73 68 6f 75 6c 64 20  | setting should |
00001380  62 65 20 62 65 74 77 65  65 6e 20 35 30 20 61 6e  |be between 50 an|
00001390  64 20 39 35 3b 20 74 68  65 20 64 65 66 61 75 6c  |d 95; the defaul|
000013a0  74 20 6f 66 20 37 35 20  69 73 0a 6f 66 74 65 6e  |t of 75 is.often|
000013b0  20 61 62 6f 75 74 20 72  69 67 68 74 2e 20 20 49  | about right.  I|
000013c0  66 20 79 6f 75 20 73 65  65 20 64 65 66 65 63 74  |f you see defect|
000013d0  73 20 61 74 20 2d 71 75  61 6c 69 74 79 20 37 35  |s at -quality 75|
000013e0  2c 20 74 68 65 6e 20 67  6f 20 75 70 20 35 20 6f  |, then go up 5 o|
000013f0  72 20 31 30 0a 63 6f 75  6e 74 73 20 61 74 20 61  |r 10.counts at a|
00001400  20 74 69 6d 65 20 75 6e  74 69 6c 20 79 6f 75 20  | time until you |
00001410  61 72 65 20 68 61 70 70  79 20 77 69 74 68 20 74  |are happy with t|
00001420  68 65 20 6f 75 74 70 75  74 20 69 6d 61 67 65 2e  |he output image.|
00001430  20 20 28 54 68 65 20 6f  70 74 69 6d 61 6c 0a 73  |  (The optimal.s|
00001440  65 74 74 69 6e 67 20 77  69 6c 6c 20 76 61 72 79  |etting will vary|
00001450  20 66 72 6f 6d 20 6f 6e  65 20 69 6d 61 67 65 20  | from one image |
00001460  74 6f 20 61 6e 6f 74 68  65 72 2e 29 0a 0a 2d 71  |to another.)..-q|
00001470  75 61 6c 69 74 79 20 31  30 30 20 77 69 6c 6c 20  |uality 100 will |
00001480  67 65 6e 65 72 61 74 65  20 61 20 71 75 61 6e 74  |generate a quant|
00001490  69 7a 61 74 69 6f 6e 20  74 61 62 6c 65 20 6f 66  |ization table of|
000014a0  20 61 6c 6c 20 31 27 73  2c 20 6d 69 6e 69 6d 69  | all 1's, minimi|
000014b0  7a 69 6e 67 20 6c 6f 73  73 0a 69 6e 20 74 68 65  |zing loss.in the|
000014c0  20 71 75 61 6e 74 69 7a  61 74 69 6f 6e 20 73 74  | quantization st|
000014d0  65 70 20 28 62 75 74 20  74 68 65 72 65 20 69 73  |ep (but there is|
000014e0  20 73 74 69 6c 6c 20 69  6e 66 6f 72 6d 61 74 69  | still informati|
000014f0  6f 6e 20 6c 6f 73 73 20  69 6e 20 73 75 62 73 61  |on loss in subsa|
00001500  6d 70 6c 69 6e 67 2c 0a  61 73 20 77 65 6c 6c 20  |mpling,.as well |
00001510  61 73 20 72 6f 75 6e 64  6f 66 66 20 65 72 72 6f  |as roundoff erro|
00001520  72 29 2e 20 20 54 68 69  73 20 73 65 74 74 69 6e  |r).  This settin|
00001530  67 20 69 73 20 6d 61 69  6e 6c 79 20 6f 66 20 69  |g is mainly of i|
00001540  6e 74 65 72 65 73 74 20  66 6f 72 0a 65 78 70 65  |nterest for.expe|
00001550  72 69 6d 65 6e 74 61 6c  20 70 75 72 70 6f 73 65  |rimental purpose|
00001560  73 2e 20 20 51 75 61 6c  69 74 79 20 76 61 6c 75  |s.  Quality valu|
00001570  65 73 20 61 62 6f 76 65  20 61 62 6f 75 74 20 39  |es above about 9|
00001580  35 20 61 72 65 20 4e 4f  54 20 72 65 63 6f 6d 6d  |5 are NOT recomm|
00001590  65 6e 64 65 64 20 66 6f  72 0a 6e 6f 72 6d 61 6c  |ended for.normal|
000015a0  20 75 73 65 3b 20 74 68  65 20 63 6f 6d 70 72 65  | use; the compre|
000015b0  73 73 65 64 20 66 69 6c  65 20 73 69 7a 65 20 67  |ssed file size g|
000015c0  6f 65 73 20 75 70 20 64  72 61 6d 61 74 69 63 61  |oes up dramatica|
000015d0  6c 6c 79 20 66 6f 72 20  68 61 72 64 6c 79 20 61  |lly for hardly a|
000015e0  6e 79 20 67 61 69 6e 0a  69 6e 20 6f 75 74 70 75  |ny gain.in outpu|
000015f0  74 20 69 6d 61 67 65 20  71 75 61 6c 69 74 79 2e  |t image quality.|
00001600  0a 0a 49 6e 20 74 68 65  20 6f 74 68 65 72 20 64  |..In the other d|
00001610  69 72 65 63 74 69 6f 6e  2c 20 71 75 61 6c 69 74  |irection, qualit|
00001620  79 20 76 61 6c 75 65 73  20 62 65 6c 6f 77 20 35  |y values below 5|
00001630  30 20 77 69 6c 6c 20 70  72 6f 64 75 63 65 20 76  |0 will produce v|
00001640  65 72 79 20 73 6d 61 6c  6c 20 66 69 6c 65 73 0a  |ery small files.|
00001650  6f 66 20 6c 6f 77 20 69  6d 61 67 65 20 71 75 61  |of low image qua|
00001660  6c 69 74 79 2e 20 20 53  65 74 74 69 6e 67 73 20  |lity.  Settings |
00001670  61 72 6f 75 6e 64 20 35  20 74 6f 20 31 30 20 6d  |around 5 to 10 m|
00001680  69 67 68 74 20 62 65 20  75 73 65 66 75 6c 20 69  |ight be useful i|
00001690  6e 20 70 72 65 70 61 72  69 6e 67 20 61 6e 0a 69  |n preparing an.i|
000016a0  6e 64 65 78 20 6f 66 20  61 20 6c 61 72 67 65 20  |ndex of a large |
000016b0  69 6d 61 67 65 20 6c 69  62 72 61 72 79 2c 20 66  |image library, f|
000016c0  6f 72 20 65 78 61 6d 70  6c 65 2e 20 20 54 72 79  |or example.  Try|
000016d0  20 2d 71 75 61 6c 69 74  79 20 32 20 28 6f 72 20  | -quality 2 (or |
000016e0  73 6f 29 20 66 6f 72 20  73 6f 6d 65 0a 61 6d 75  |so) for some.amu|
000016f0  73 69 6e 67 20 43 75 62  69 73 74 20 65 66 66 65  |sing Cubist effe|
00001700  63 74 73 2e 20 20 28 4e  6f 74 65 3a 20 71 75 61  |cts.  (Note: qua|
00001710  6c 69 74 79 20 76 61 6c  75 65 73 20 62 65 6c 6f  |lity values belo|
00001720  77 20 61 62 6f 75 74 20  32 35 20 67 65 6e 65 72  |w about 25 gener|
00001730  61 74 65 20 32 2d 62 79  74 65 0a 71 75 61 6e 74  |ate 2-byte.quant|
00001740  69 7a 61 74 69 6f 6e 20  74 61 62 6c 65 73 2c 20  |ization tables, |
00001750  77 68 69 63 68 20 61 72  65 20 63 6f 6e 73 69 64  |which are consid|
00001760  65 72 65 64 20 6f 70 74  69 6f 6e 61 6c 20 69 6e  |ered optional in|
00001770  20 74 68 65 20 4a 50 45  47 20 73 74 61 6e 64 61  | the JPEG standa|
00001780  72 64 2e 0a 63 6a 70 65  67 20 65 6d 69 74 73 20  |rd..cjpeg emits |
00001790  61 20 77 61 72 6e 69 6e  67 20 6d 65 73 73 61 67  |a warning messag|
000017a0  65 20 77 68 65 6e 20 79  6f 75 20 67 69 76 65 20  |e when you give |
000017b0  73 75 63 68 20 61 20 71  75 61 6c 69 74 79 20 76  |such a quality v|
000017c0  61 6c 75 65 2c 20 62 65  63 61 75 73 65 20 73 6f  |alue, because so|
000017d0  6d 65 0a 6f 74 68 65 72  20 4a 50 45 47 20 70 72  |me.other JPEG pr|
000017e0  6f 67 72 61 6d 73 20 6d  61 79 20 62 65 20 75 6e  |ograms may be un|
000017f0  61 62 6c 65 20 74 6f 20  64 65 63 6f 64 65 20 74  |able to decode t|
00001800  68 65 20 72 65 73 75 6c  74 69 6e 67 20 66 69 6c  |he resulting fil|
00001810  65 2e 20 20 55 73 65 20  2d 62 61 73 65 6c 69 6e  |e.  Use -baselin|
00001820  65 0a 69 66 20 79 6f 75  20 6e 65 65 64 20 74 6f  |e.if you need to|
00001830  20 65 6e 73 75 72 65 20  63 6f 6d 70 61 74 69 62  | ensure compatib|
00001840  69 6c 69 74 79 20 61 74  20 6c 6f 77 20 71 75 61  |ility at low qua|
00001850  6c 69 74 79 20 76 61 6c  75 65 73 2e 29 0a 0a 54  |lity values.)..T|
00001860  68 65 20 2d 70 72 6f 67  72 65 73 73 69 76 65 20  |he -progressive |
00001870  73 77 69 74 63 68 20 63  72 65 61 74 65 73 20 61  |switch creates a|
00001880  20 22 70 72 6f 67 72 65  73 73 69 76 65 20 4a 50  | "progressive JP|
00001890  45 47 22 20 66 69 6c 65  2e 20 20 49 6e 20 74 68  |EG" file.  In th|
000018a0  69 73 20 74 79 70 65 20  6f 66 0a 4a 50 45 47 20  |is type of.JPEG |
000018b0  66 69 6c 65 2c 20 74 68  65 20 64 61 74 61 20 69  |file, the data i|
000018c0  73 20 73 74 6f 72 65 64  20 69 6e 20 6d 75 6c 74  |s stored in mult|
000018d0  69 70 6c 65 20 73 63 61  6e 73 20 6f 66 20 69 6e  |iple scans of in|
000018e0  63 72 65 61 73 69 6e 67  20 71 75 61 6c 69 74 79  |creasing quality|
000018f0  2e 20 20 49 66 20 74 68  65 0a 66 69 6c 65 20 69  |.  If the.file i|
00001900  73 20 62 65 69 6e 67 20  74 72 61 6e 73 6d 69 74  |s being transmit|
00001910  74 65 64 20 6f 76 65 72  20 61 20 73 6c 6f 77 20  |ted over a slow |
00001920  63 6f 6d 6d 75 6e 69 63  61 74 69 6f 6e 73 20 6c  |communications l|
00001930  69 6e 6b 2c 20 74 68 65  20 64 65 63 6f 64 65 72  |ink, the decoder|
00001940  20 63 61 6e 20 75 73 65  0a 74 68 65 20 66 69 72  | can use.the fir|
00001950  73 74 20 73 63 61 6e 20  74 6f 20 64 69 73 70 6c  |st scan to displ|
00001960  61 79 20 61 20 6c 6f 77  2d 71 75 61 6c 69 74 79  |ay a low-quality|
00001970  20 69 6d 61 67 65 20 76  65 72 79 20 71 75 69 63  | image very quic|
00001980  6b 6c 79 2c 20 61 6e 64  20 63 61 6e 20 74 68 65  |kly, and can the|
00001990  6e 0a 69 6d 70 72 6f 76  65 20 74 68 65 20 64 69  |n.improve the di|
000019a0  73 70 6c 61 79 20 77 69  74 68 20 65 61 63 68 20  |splay with each |
000019b0  73 75 62 73 65 71 75 65  6e 74 20 73 63 61 6e 2e  |subsequent scan.|
000019c0  20 20 54 68 65 20 66 69  6e 61 6c 20 69 6d 61 67  |  The final imag|
000019d0  65 20 69 73 20 65 78 61  63 74 6c 79 0a 65 71 75  |e is exactly.equ|
000019e0  69 76 61 6c 65 6e 74 20  74 6f 20 61 20 73 74 61  |ivalent to a sta|
000019f0  6e 64 61 72 64 20 4a 50  45 47 20 66 69 6c 65 20  |ndard JPEG file |
00001a00  6f 66 20 74 68 65 20 73  61 6d 65 20 71 75 61 6c  |of the same qual|
00001a10  69 74 79 20 73 65 74 74  69 6e 67 2c 20 61 6e 64  |ity setting, and|
00001a20  20 74 68 65 20 74 6f 74  61 6c 0a 66 69 6c 65 20  | the total.file |
00001a30  73 69 7a 65 20 69 73 20  61 62 6f 75 74 20 74 68  |size is about th|
00001a40  65 20 73 61 6d 65 20 2d  2d 2d 20 6f 66 74 65 6e  |e same --- often|
00001a50  20 61 20 6c 69 74 74 6c  65 20 73 6d 61 6c 6c 65  | a little smalle|
00001a60  72 2e 20 20 43 41 55 54  49 4f 4e 3a 20 70 72 6f  |r.  CAUTION: pro|
00001a70  67 72 65 73 73 69 76 65  0a 4a 50 45 47 20 69 73  |gressive.JPEG is|
00001a80  20 6e 6f 74 20 79 65 74  20 77 69 64 65 6c 79 20  | not yet widely |
00001a90  69 6d 70 6c 65 6d 65 6e  74 65 64 2c 20 73 6f 20  |implemented, so |
00001aa0  6d 61 6e 79 20 64 65 63  6f 64 65 72 73 20 77 69  |many decoders wi|
00001ab0  6c 6c 20 62 65 20 75 6e  61 62 6c 65 20 74 6f 20  |ll be unable to |
00001ac0  76 69 65 77 20 61 0a 70  72 6f 67 72 65 73 73 69  |view a.progressi|
00001ad0  76 65 20 4a 50 45 47 20  66 69 6c 65 20 61 74 20  |ve JPEG file at |
00001ae0  61 6c 6c 2e 0a 0a 53 77  69 74 63 68 65 73 20 66  |all...Switches f|
00001af0  6f 72 20 61 64 76 61 6e  63 65 64 20 75 73 65 72  |or advanced user|
00001b00  73 3a 0a 0a 09 2d 64 63  74 20 69 6e 74 09 55 73  |s:...-dct int.Us|
00001b10  65 20 69 6e 74 65 67 65  72 20 44 43 54 20 6d 65  |e integer DCT me|
00001b20  74 68 6f 64 20 28 64 65  66 61 75 6c 74 29 2e 0a  |thod (default)..|
00001b30  09 2d 64 63 74 20 66 61  73 74 09 55 73 65 20 66  |.-dct fast.Use f|
00001b40  61 73 74 20 69 6e 74 65  67 65 72 20 44 43 54 20  |ast integer DCT |
00001b50  28 6c 65 73 73 20 61 63  63 75 72 61 74 65 29 2e  |(less accurate).|
00001b60  0a 09 2d 64 63 74 20 66  6c 6f 61 74 09 55 73 65  |..-dct float.Use|
00001b70  20 66 6c 6f 61 74 69 6e  67 2d 70 6f 69 6e 74 20  | floating-point |
00001b80  44 43 54 20 6d 65 74 68  6f 64 2e 0a 09 09 09 54  |DCT method.....T|
00001b90  68 65 20 66 6c 6f 61 74  20 6d 65 74 68 6f 64 20  |he float method |
00001ba0  69 73 20 76 65 72 79 20  73 6c 69 67 68 74 6c 79  |is very slightly|
00001bb0  20 6d 6f 72 65 20 61 63  63 75 72 61 74 65 20 74  | more accurate t|
00001bc0  68 61 6e 0a 09 09 09 74  68 65 20 69 6e 74 20 6d  |han....the int m|
00001bd0  65 74 68 6f 64 2c 20 62  75 74 20 69 73 20 6d 75  |ethod, but is mu|
00001be0  63 68 20 73 6c 6f 77 65  72 20 75 6e 6c 65 73 73  |ch slower unless|
00001bf0  20 79 6f 75 72 20 6d 61  63 68 69 6e 65 0a 09 09  | your machine...|
00001c00  09 68 61 73 20 76 65 72  79 20 66 61 73 74 20 66  |.has very fast f|
00001c10  6c 6f 61 74 69 6e 67 2d  70 6f 69 6e 74 20 68 61  |loating-point ha|
00001c20  72 64 77 61 72 65 2e 20  20 41 6c 73 6f 20 6e 6f  |rdware.  Also no|
00001c30  74 65 20 74 68 61 74 0a  09 09 09 72 65 73 75 6c  |te that....resul|
00001c40  74 73 20 6f 66 20 74 68  65 20 66 6c 6f 61 74 69  |ts of the floati|
00001c50  6e 67 2d 70 6f 69 6e 74  20 6d 65 74 68 6f 64 20  |ng-point method |
00001c60  6d 61 79 20 76 61 72 79  20 73 6c 69 67 68 74 6c  |may vary slightl|
00001c70  79 0a 09 09 09 61 63 72  6f 73 73 20 6d 61 63 68  |y....across mach|
00001c80  69 6e 65 73 2c 20 77 68  69 6c 65 20 74 68 65 20  |ines, while the |
00001c90  69 6e 74 65 67 65 72 20  6d 65 74 68 6f 64 73 20  |integer methods |
00001ca0  73 68 6f 75 6c 64 20 67  69 76 65 0a 09 09 09 74  |should give....t|
00001cb0  68 65 20 73 61 6d 65 20  72 65 73 75 6c 74 73 20  |he same results |
00001cc0  65 76 65 72 79 77 68 65  72 65 2e 20 20 54 68 65  |everywhere.  The|
00001cd0  20 66 61 73 74 20 69 6e  74 65 67 65 72 20 6d 65  | fast integer me|
00001ce0  74 68 6f 64 0a 09 09 09  69 73 20 6d 75 63 68 20  |thod....is much |
00001cf0  6c 65 73 73 20 61 63 63  75 72 61 74 65 20 74 68  |less accurate th|
00001d00  61 6e 20 74 68 65 20 6f  74 68 65 72 20 74 77 6f  |an the other two|
00001d10  2e 0a 0a 09 2d 72 65 73  74 61 72 74 20 4e 09 45  |....-restart N.E|
00001d20  6d 69 74 20 61 20 4a 50  45 47 20 72 65 73 74 61  |mit a JPEG resta|
00001d30  72 74 20 6d 61 72 6b 65  72 20 65 76 65 72 79 20  |rt marker every |
00001d40  4e 20 4d 43 55 20 72 6f  77 73 2c 20 6f 72 20 65  |N MCU rows, or e|
00001d50  76 65 72 79 0a 09 09 09  4e 20 4d 43 55 20 62 6c  |very....N MCU bl|
00001d60  6f 63 6b 73 20 69 66 20  22 42 22 20 69 73 20 61  |ocks if "B" is a|
00001d70  74 74 61 63 68 65 64 20  74 6f 20 74 68 65 20 6e  |ttached to the n|
00001d80  75 6d 62 65 72 2e 0a 09  09 09 2d 72 65 73 74 61  |umber.....-resta|
00001d90  72 74 20 30 20 28 74 68  65 20 64 65 66 61 75 6c  |rt 0 (the defaul|
00001da0  74 29 20 6d 65 61 6e 73  20 6e 6f 20 72 65 73 74  |t) means no rest|
00001db0  61 72 74 20 6d 61 72 6b  65 72 73 2e 0a 0a 09 2d  |art markers....-|
00001dc0  73 6d 6f 6f 74 68 20 4e  09 53 6d 6f 6f 74 68 20  |smooth N.Smooth |
00001dd0  74 68 65 20 69 6e 70 75  74 20 69 6d 61 67 65 20  |the input image |
00001de0  74 6f 20 65 6c 69 6d 69  6e 61 74 65 20 64 69 74  |to eliminate dit|
00001df0  68 65 72 69 6e 67 20 6e  6f 69 73 65 2e 0a 09 09  |hering noise....|
00001e00  09 4e 2c 20 72 61 6e 67  69 6e 67 20 66 72 6f 6d  |.N, ranging from|
00001e10  20 31 20 74 6f 20 31 30  30 2c 20 69 6e 64 69 63  | 1 to 100, indic|
00001e20  61 74 65 73 20 74 68 65  20 73 74 72 65 6e 67 74  |ates the strengt|
00001e30  68 20 6f 66 0a 09 09 09  73 6d 6f 6f 74 68 69 6e  |h of....smoothin|
00001e40  67 2e 20 20 30 20 28 74  68 65 20 64 65 66 61 75  |g.  0 (the defau|
00001e50  6c 74 29 20 6d 65 61 6e  73 20 6e 6f 20 73 6d 6f  |lt) means no smo|
00001e60  6f 74 68 69 6e 67 2e 0a  0a 09 2d 6d 61 78 6d 65  |othing....-maxme|
00001e70  6d 6f 72 79 20 4e 09 53  65 74 20 6c 69 6d 69 74  |mory N.Set limit|
00001e80  20 66 6f 72 20 61 6d 6f  75 6e 74 20 6f 66 20 6d  | for amount of m|
00001e90  65 6d 6f 72 79 20 74 6f  20 75 73 65 20 69 6e 20  |emory to use in |
00001ea0  70 72 6f 63 65 73 73 69  6e 67 0a 09 09 09 6c 61  |processing....la|
00001eb0  72 67 65 20 69 6d 61 67  65 73 2e 20 20 56 61 6c  |rge images.  Val|
00001ec0  75 65 20 69 73 20 69 6e  20 74 68 6f 75 73 61 6e  |ue is in thousan|
00001ed0  64 73 20 6f 66 20 62 79  74 65 73 2c 20 6f 72 0a  |ds of bytes, or.|
00001ee0  09 09 09 6d 69 6c 6c 69  6f 6e 73 20 6f 66 20 62  |...millions of b|
00001ef0  79 74 65 73 20 69 66 20  22 4d 22 20 69 73 20 61  |ytes if "M" is a|
00001f00  74 74 61 63 68 65 64 20  74 6f 20 74 68 65 20 6e  |ttached to the n|
00001f10  75 6d 62 65 72 2e 0a 09  09 09 46 6f 72 20 65 78  |umber.....For ex|
00001f20  61 6d 70 6c 65 2c 20 2d  6d 61 78 20 34 6d 20 73  |ample, -max 4m s|
00001f30  65 6c 65 63 74 73 20 34  30 30 30 30 30 30 20 62  |elects 4000000 b|
00001f40  79 74 65 73 2e 20 20 49  66 20 6d 6f 72 65 0a 09  |ytes.  If more..|
00001f50  09 09 73 70 61 63 65 20  69 73 20 6e 65 65 64 65  |..space is neede|
00001f60  64 2c 20 74 65 6d 70 6f  72 61 72 79 20 66 69 6c  |d, temporary fil|
00001f70  65 73 20 77 69 6c 6c 20  62 65 20 75 73 65 64 2e  |es will be used.|
00001f80  0a 0a 09 2d 76 65 72 62  6f 73 65 09 45 6e 61 62  |...-verbose.Enab|
00001f90  6c 65 20 64 65 62 75 67  20 70 72 69 6e 74 6f 75  |le debug printou|
00001fa0  74 2e 20 20 4d 6f 72 65  20 2d 76 27 73 20 67 69  |t.  More -v's gi|
00001fb0  76 65 20 6d 6f 72 65 20  70 72 69 6e 74 6f 75 74  |ve more printout|
00001fc0  2e 0a 09 6f 72 20 20 2d  64 65 62 75 67 09 41 6c  |...or  -debug.Al|
00001fd0  73 6f 2c 20 76 65 72 73  69 6f 6e 20 69 6e 66 6f  |so, version info|
00001fe0  72 6d 61 74 69 6f 6e 20  69 73 20 70 72 69 6e 74  |rmation is print|
00001ff0  65 64 20 61 74 20 73 74  61 72 74 75 70 2e 0a 0a  |ed at startup...|
00002000  54 68 65 20 2d 72 65 73  74 61 72 74 20 6f 70 74  |The -restart opt|
00002010  69 6f 6e 20 69 6e 73 65  72 74 73 20 65 78 74 72  |ion inserts extr|
00002020  61 20 6d 61 72 6b 65 72  73 20 74 68 61 74 20 61  |a markers that a|
00002030  6c 6c 6f 77 20 61 20 4a  50 45 47 20 64 65 63 6f  |llow a JPEG deco|
00002040  64 65 72 20 74 6f 0a 72  65 73 79 6e 63 68 72 6f  |der to.resynchro|
00002050  6e 69 7a 65 20 61 66 74  65 72 20 61 20 74 72 61  |nize after a tra|
00002060  6e 73 6d 69 73 73 69 6f  6e 20 65 72 72 6f 72 2e  |nsmission error.|
00002070  20 20 57 69 74 68 6f 75  74 20 72 65 73 74 61 72  |  Without restar|
00002080  74 20 6d 61 72 6b 65 72  73 2c 20 61 6e 79 20 64  |t markers, any d|
00002090  61 6d 61 67 65 0a 74 6f  20 61 20 63 6f 6d 70 72  |amage.to a compr|
000020a0  65 73 73 65 64 20 66 69  6c 65 20 77 69 6c 6c 20  |essed file will |
000020b0  75 73 75 61 6c 6c 79 20  72 75 69 6e 20 74 68 65  |usually ruin the|
000020c0  20 69 6d 61 67 65 20 66  72 6f 6d 20 74 68 65 20  | image from the |
000020d0  70 6f 69 6e 74 20 6f 66  20 74 68 65 20 65 72 72  |point of the err|
000020e0  6f 72 0a 74 6f 20 74 68  65 20 65 6e 64 20 6f 66  |or.to the end of|
000020f0  20 74 68 65 20 69 6d 61  67 65 3b 20 77 69 74 68  | the image; with|
00002100  20 72 65 73 74 61 72 74  20 6d 61 72 6b 65 72 73  | restart markers|
00002110  2c 20 74 68 65 20 64 61  6d 61 67 65 20 69 73 20  |, the damage is |
00002120  75 73 75 61 6c 6c 79 20  63 6f 6e 66 69 6e 65 64  |usually confined|
00002130  0a 74 6f 20 74 68 65 20  70 6f 72 74 69 6f 6e 20  |.to the portion |
00002140  6f 66 20 74 68 65 20 69  6d 61 67 65 20 75 70 20  |of the image up |
00002150  74 6f 20 74 68 65 20 6e  65 78 74 20 72 65 73 74  |to the next rest|
00002160  61 72 74 20 6d 61 72 6b  65 72 2e 20 20 4f 66 20  |art marker.  Of |
00002170  63 6f 75 72 73 65 2c 20  74 68 65 0a 72 65 73 74  |course, the.rest|
00002180  61 72 74 20 6d 61 72 6b  65 72 73 20 6f 63 63 75  |art markers occu|
00002190  70 79 20 65 78 74 72 61  20 73 70 61 63 65 2e 20  |py extra space. |
000021a0  20 57 65 20 72 65 63 6f  6d 6d 65 6e 64 20 2d 72  | We recommend -r|
000021b0  65 73 74 61 72 74 20 31  20 66 6f 72 20 69 6d 61  |estart 1 for ima|
000021c0  67 65 73 20 74 68 61 74  0a 77 69 6c 6c 20 62 65  |ges that.will be|
000021d0  20 74 72 61 6e 73 6d 69  74 74 65 64 20 61 63 72  | transmitted acr|
000021e0  6f 73 73 20 75 6e 72 65  6c 69 61 62 6c 65 20 6e  |oss unreliable n|
000021f0  65 74 77 6f 72 6b 73 20  73 75 63 68 20 61 73 20  |etworks such as |
00002200  55 73 65 6e 65 74 2e 0a  0a 54 68 65 20 2d 73 6d  |Usenet...The -sm|
00002210  6f 6f 74 68 20 6f 70 74  69 6f 6e 20 66 69 6c 74  |ooth option filt|
00002220  65 72 73 20 74 68 65 20  69 6e 70 75 74 20 74 6f  |ers the input to|
00002230  20 65 6c 69 6d 69 6e 61  74 65 20 66 69 6e 65 2d  | eliminate fine-|
00002240  73 63 61 6c 65 20 6e 6f  69 73 65 2e 20 20 54 68  |scale noise.  Th|
00002250  69 73 20 69 73 0a 6f 66  74 65 6e 20 75 73 65 66  |is is.often usef|
00002260  75 6c 20 77 68 65 6e 20  63 6f 6e 76 65 72 74 69  |ul when converti|
00002270  6e 67 20 47 49 46 20 66  69 6c 65 73 20 74 6f 20  |ng GIF files to |
00002280  4a 50 45 47 3a 20 61 20  6d 6f 64 65 72 61 74 65  |JPEG: a moderate|
00002290  20 73 6d 6f 6f 74 68 69  6e 67 20 66 61 63 74 6f  | smoothing facto|
000022a0  72 20 6f 66 0a 31 30 20  74 6f 20 35 30 20 67 65  |r of.10 to 50 ge|
000022b0  74 73 20 72 69 64 20 6f  66 20 64 69 74 68 65 72  |ts rid of dither|
000022c0  69 6e 67 20 70 61 74 74  65 72 6e 73 20 69 6e 20  |ing patterns in |
000022d0  74 68 65 20 69 6e 70 75  74 20 66 69 6c 65 2c 20  |the input file, |
000022e0  72 65 73 75 6c 74 69 6e  67 20 69 6e 20 61 0a 73  |resulting in a.s|
000022f0  6d 61 6c 6c 65 72 20 4a  50 45 47 20 66 69 6c 65  |maller JPEG file|
00002300  20 61 6e 64 20 61 20 62  65 74 74 65 72 2d 6c 6f  | and a better-lo|
00002310  6f 6b 69 6e 67 20 69 6d  61 67 65 2e 20 20 54 6f  |oking image.  To|
00002320  6f 20 6c 61 72 67 65 20  61 20 73 6d 6f 6f 74 68  |o large a smooth|
00002330  69 6e 67 20 66 61 63 74  6f 72 0a 77 69 6c 6c 20  |ing factor.will |
00002340  76 69 73 69 62 6c 79 20  62 6c 75 72 20 74 68 65  |visibly blur the|
00002350  20 69 6d 61 67 65 2c 20  68 6f 77 65 76 65 72 2e  | image, however.|
00002360  0a 0a 53 77 69 74 63 68  65 73 20 66 6f 72 20 77  |..Switches for w|
00002370  69 7a 61 72 64 73 3a 0a  0a 09 2d 62 61 73 65 6c  |izards:...-basel|
00002380  69 6e 65 09 46 6f 72 63  65 20 61 20 62 61 73 65  |ine.Force a base|
00002390  6c 69 6e 65 20 4a 50 45  47 20 66 69 6c 65 20 74  |line JPEG file t|
000023a0  6f 20 62 65 20 67 65 6e  65 72 61 74 65 64 2e 20  |o be generated. |
000023b0  20 54 68 69 73 0a 09 09  09 63 6c 61 6d 70 73 20  | This....clamps |
000023c0  71 75 61 6e 74 69 7a 61  74 69 6f 6e 20 76 61 6c  |quantization val|
000023d0  75 65 73 20 74 6f 20 38  20 62 69 74 73 20 65 76  |ues to 8 bits ev|
000023e0  65 6e 20 61 74 20 6c 6f  77 0a 09 09 09 71 75 61  |en at low....qua|
000023f0  6c 69 74 79 20 73 65 74  74 69 6e 67 73 2e 0a 0a  |lity settings...|
00002400  09 2d 71 74 61 62 6c 65  73 20 66 69 6c 65 09 55  |.-qtables file.U|
00002410  73 65 20 74 68 65 20 71  75 61 6e 74 69 7a 61 74  |se the quantizat|
00002420  69 6f 6e 20 74 61 62 6c  65 73 20 67 69 76 65 6e  |ion tables given|
00002430  20 69 6e 20 74 68 65 20  73 70 65 63 69 66 69 65  | in the specifie|
00002440  64 0a 09 09 09 74 65 78  74 20 66 69 6c 65 2e 0a  |d....text file..|
00002450  0a 09 2d 71 73 6c 6f 74  73 20 4e 5b 2c 2e 2e 2e  |..-qslots N[,...|
00002460  5d 20 53 65 6c 65 63 74  20 77 68 69 63 68 20 71  |] Select which q|
00002470  75 61 6e 74 69 7a 61 74  69 6f 6e 20 74 61 62 6c  |uantization tabl|
00002480  65 20 74 6f 20 75 73 65  20 66 6f 72 20 65 61 63  |e to use for eac|
00002490  68 20 63 6f 6c 6f 72 0a  09 09 09 63 6f 6d 70 6f  |h color....compo|
000024a0  6e 65 6e 74 2e 0a 0a 09  2d 73 61 6d 70 6c 65 20  |nent....-sample |
000024b0  48 78 56 5b 2c 2e 2e 2e  5d 20 20 53 65 74 20 4a  |HxV[,...]  Set J|
000024c0  50 45 47 20 73 61 6d 70  6c 69 6e 67 20 66 61 63  |PEG sampling fac|
000024d0  74 6f 72 73 20 66 6f 72  20 65 61 63 68 20 63 6f  |tors for each co|
000024e0  6c 6f 72 20 63 6f 6d 70  6f 6e 65 6e 74 2e 0a 0a  |lor component...|
000024f0  09 2d 73 63 61 6e 73 20  66 69 6c 65 09 55 73 65  |.-scans file.Use|
00002500  20 74 68 65 20 73 63 61  6e 20 73 63 72 69 70 74  | the scan script|
00002510  20 67 69 76 65 6e 20 69  6e 20 74 68 65 20 73 70  | given in the sp|
00002520  65 63 69 66 69 65 64 20  74 65 78 74 20 66 69 6c  |ecified text fil|
00002530  65 2e 0a 0a 54 68 65 20  22 77 69 7a 61 72 64 22  |e...The "wizard"|
00002540  20 73 77 69 74 63 68 65  73 20 61 72 65 20 69 6e  | switches are in|
00002550  74 65 6e 64 65 64 20 66  6f 72 20 65 78 70 65 72  |tended for exper|
00002560  69 6d 65 6e 74 61 74 69  6f 6e 20 77 69 74 68 20  |imentation with |
00002570  4a 50 45 47 2e 20 20 49  66 20 79 6f 75 0a 64 6f  |JPEG.  If you.do|
00002580  6e 27 74 20 6b 6e 6f 77  20 77 68 61 74 20 79 6f  |n't know what yo|
00002590  75 20 61 72 65 20 64 6f  69 6e 67 2c 20 44 4f 4e  |u are doing, DON|
000025a0  27 54 20 55 53 45 20 54  48 45 4d 2e 20 20 54 68  |'T USE THEM.  Th|
000025b0  65 73 65 20 73 77 69 74  63 68 65 73 20 61 72 65  |ese switches are|
000025c0  20 64 6f 63 75 6d 65 6e  74 65 64 0a 66 75 72 74  | documented.furt|
000025d0  68 65 72 20 69 6e 20 74  68 65 20 66 69 6c 65 20  |her in the file |
000025e0  77 69 7a 61 72 64 2e 64  6f 63 2e 0a 0a 0a 44 4a  |wizard.doc....DJ|
000025f0  50 45 47 20 44 45 54 41  49 4c 53 0a 0a 54 68 65  |PEG DETAILS..The|
00002600  20 62 61 73 69 63 20 63  6f 6d 6d 61 6e 64 20 6c  | basic command l|
00002610  69 6e 65 20 73 77 69 74  63 68 65 73 20 66 6f 72  |ine switches for|
00002620  20 64 6a 70 65 67 20 61  72 65 3a 0a 0a 09 2d 63  | djpeg are:...-c|
00002630  6f 6c 6f 72 73 20 4e 09  52 65 64 75 63 65 20 69  |olors N.Reduce i|
00002640  6d 61 67 65 20 74 6f 20  61 74 20 6d 6f 73 74 20  |mage to at most |
00002650  4e 20 63 6f 6c 6f 72 73  2e 20 20 54 68 69 73 20  |N colors.  This |
00002660  72 65 64 75 63 65 73 20  74 68 65 0a 09 6f 72 20  |reduces the..or |
00002670  2d 71 75 61 6e 74 69 7a  65 20 4e 09 6e 75 6d 62  |-quantize N.numb|
00002680  65 72 20 6f 66 20 63 6f  6c 6f 72 73 20 75 73 65  |er of colors use|
00002690  64 20 69 6e 20 74 68 65  20 6f 75 74 70 75 74 20  |d in the output |
000026a0  69 6d 61 67 65 2c 20 73  6f 20 74 68 61 74 20 69  |image, so that i|
000026b0  74 0a 09 09 09 63 61 6e  20 62 65 20 64 69 73 70  |t....can be disp|
000026c0  6c 61 79 65 64 20 6f 6e  20 61 20 63 6f 6c 6f 72  |layed on a color|
000026d0  6d 61 70 70 65 64 20 64  69 73 70 6c 61 79 20 6f  |mapped display o|
000026e0  72 20 73 74 6f 72 65 64  20 69 6e 0a 09 09 09 61  |r stored in....a|
000026f0  20 63 6f 6c 6f 72 6d 61  70 70 65 64 20 66 69 6c  | colormapped fil|
00002700  65 20 66 6f 72 6d 61 74  2e 20 20 46 6f 72 20 65  |e format.  For e|
00002710  78 61 6d 70 6c 65 2c 20  69 66 20 79 6f 75 20 68  |xample, if you h|
00002720  61 76 65 0a 09 09 09 61  6e 20 38 2d 62 69 74 20  |ave....an 8-bit |
00002730  64 69 73 70 6c 61 79 2c  20 79 6f 75 27 64 20 6e  |display, you'd n|
00002740  65 65 64 20 74 6f 20 72  65 64 75 63 65 20 74 6f  |eed to reduce to|
00002750  20 32 35 36 20 6f 72 20  66 65 77 65 72 0a 09 09  | 256 or fewer...|
00002760  09 63 6f 6c 6f 72 73 2e  20 20 28 2d 63 6f 6c 6f  |.colors.  (-colo|
00002770  72 73 20 69 73 20 74 68  65 20 72 65 63 6f 6d 6d  |rs is the recomm|
00002780  65 6e 64 65 64 20 6e 61  6d 65 2c 20 2d 71 75 61  |ended name, -qua|
00002790  6e 74 69 7a 65 0a 09 09  09 69 73 20 70 72 6f 76  |ntize....is prov|
000027a0  69 64 65 64 20 6f 6e 6c  79 20 66 6f 72 20 62 61  |ided only for ba|
000027b0  63 6b 77 61 72 64 73 20  63 6f 6d 70 61 74 69 62  |ckwards compatib|
000027c0  69 6c 69 74 79 2e 29 0a  0a 09 2d 66 61 73 74 09  |ility.)...-fast.|
000027d0  09 53 65 6c 65 63 74 20  72 65 63 6f 6d 6d 65 6e  |.Select recommen|
000027e0  64 65 64 20 70 72 6f 63  65 73 73 69 6e 67 20 6f  |ded processing o|
000027f0  70 74 69 6f 6e 73 20 66  6f 72 20 66 61 73 74 2c  |ptions for fast,|
00002800  20 6c 6f 77 0a 09 09 09  71 75 61 6c 69 74 79 20  | low....quality |
00002810  6f 75 74 70 75 74 2e 20  20 28 54 68 65 20 64 65  |output.  (The de|
00002820  66 61 75 6c 74 20 6f 70  74 69 6f 6e 73 20 61 72  |fault options ar|
00002830  65 20 63 68 6f 73 65 6e  20 66 6f 72 0a 09 09 09  |e chosen for....|
00002840  68 69 67 68 65 73 74 20  71 75 61 6c 69 74 79 20  |highest quality |
00002850  6f 75 74 70 75 74 2e 29  20 20 43 75 72 72 65 6e  |output.)  Curren|
00002860  74 6c 79 2c 20 74 68 69  73 20 69 73 20 65 71 75  |tly, this is equ|
00002870  69 76 61 6c 65 6e 74 0a  09 09 09 74 6f 20 22 2d  |ivalent....to "-|
00002880  64 63 74 20 66 61 73 74  20 2d 6e 6f 73 6d 6f 6f  |dct fast -nosmoo|
00002890  74 68 20 2d 6f 6e 65 70  61 73 73 20 2d 64 69 74  |th -onepass -dit|
000028a0  68 65 72 20 6f 72 64 65  72 65 64 22 2e 0a 0a 09  |her ordered"....|
000028b0  2d 67 72 61 79 73 63 61  6c 65 09 46 6f 72 63 65  |-grayscale.Force|
000028c0  20 67 72 61 79 2d 73 63  61 6c 65 20 6f 75 74 70  | gray-scale outp|
000028d0  75 74 20 65 76 65 6e 20  69 66 20 4a 50 45 47 20  |ut even if JPEG |
000028e0  66 69 6c 65 20 69 73 20  63 6f 6c 6f 72 2e 0a 09  |file is color...|
000028f0  09 09 55 73 65 66 75 6c  20 66 6f 72 20 76 69 65  |..Useful for vie|
00002900  77 69 6e 67 20 6f 6e 20  6d 6f 6e 6f 63 68 72 6f  |wing on monochro|
00002910  6d 65 20 64 69 73 70 6c  61 79 73 3b 20 61 6c 73  |me displays; als|
00002920  6f 2c 0a 09 09 09 64 6a  70 65 67 20 72 75 6e 73  |o,....djpeg runs|
00002930  20 6e 6f 74 69 63 65 61  62 6c 79 20 66 61 73 74  | noticeably fast|
00002940  65 72 20 69 6e 20 74 68  69 73 20 6d 6f 64 65 2e  |er in this mode.|
00002950  0a 0a 09 2d 73 63 61 6c  65 20 4d 2f 4e 09 53 63  |...-scale M/N.Sc|
00002960  61 6c 65 20 74 68 65 20  6f 75 74 70 75 74 20 69  |ale the output i|
00002970  6d 61 67 65 20 62 79 20  61 20 66 61 63 74 6f 72  |mage by a factor|
00002980  20 4d 2f 4e 2e 20 20 43  75 72 72 65 6e 74 6c 79  | M/N.  Currently|
00002990  0a 09 09 09 74 68 65 20  73 63 61 6c 65 20 66 61  |....the scale fa|
000029a0  63 74 6f 72 20 6d 75 73  74 20 62 65 20 31 2f 31  |ctor must be 1/1|
000029b0  2c 20 31 2f 32 2c 20 31  2f 34 2c 20 6f 72 20 31  |, 1/2, 1/4, or 1|
000029c0  2f 38 2e 0a 09 09 09 53  63 61 6c 69 6e 67 20 69  |/8.....Scaling i|
000029d0  73 20 68 61 6e 64 79 20  69 66 20 74 68 65 20 69  |s handy if the i|
000029e0  6d 61 67 65 20 69 73 20  6c 61 72 67 65 72 20 74  |mage is larger t|
000029f0  68 61 6e 20 79 6f 75 72  0a 09 09 09 73 63 72 65  |han your....scre|
00002a00  65 6e 3b 20 61 6c 73 6f  2c 20 64 6a 70 65 67 20  |en; also, djpeg |
00002a10  72 75 6e 73 20 6d 75 63  68 20 66 61 73 74 65 72  |runs much faster|
00002a20  20 77 68 65 6e 20 73 63  61 6c 69 6e 67 0a 09 09  | when scaling...|
00002a30  09 64 6f 77 6e 20 74 68  65 20 6f 75 74 70 75 74  |.down the output|
00002a40  2e 0a 0a 09 2d 62 6d 70  09 09 53 65 6c 65 63 74  |....-bmp..Select|
00002a50  20 42 4d 50 20 6f 75 74  70 75 74 20 66 6f 72 6d  | BMP output form|
00002a60  61 74 20 28 57 69 6e 64  6f 77 73 20 66 6c 61 76  |at (Windows flav|
00002a70  6f 72 29 2e 20 20 38 2d  62 69 74 0a 09 09 09 63  |or).  8-bit....c|
00002a80  6f 6c 6f 72 6d 61 70 70  65 64 20 66 6f 72 6d 61  |olormapped forma|
00002a90  74 20 69 73 20 65 6d 69  74 74 65 64 20 69 66 20  |t is emitted if |
00002aa0  2d 63 6f 6c 6f 72 73 20  6f 72 20 2d 67 72 61 79  |-colors or -gray|
00002ab0  73 63 61 6c 65 0a 09 09  09 69 73 20 73 70 65 63  |scale....is spec|
00002ac0  69 66 69 65 64 2c 20 6f  72 20 69 66 20 74 68 65  |ified, or if the|
00002ad0  20 4a 50 45 47 20 66 69  6c 65 20 69 73 20 67 72  | JPEG file is gr|
00002ae0  61 79 2d 73 63 61 6c 65  3b 0a 09 09 09 6f 74 68  |ay-scale;....oth|
00002af0  65 72 77 69 73 65 2c 20  32 34 2d 62 69 74 20 66  |erwise, 24-bit f|
00002b00  75 6c 6c 2d 63 6f 6c 6f  72 20 66 6f 72 6d 61 74  |ull-color format|
00002b10  20 69 73 20 65 6d 69 74  74 65 64 2e 0a 0a 09 2d  | is emitted....-|
00002b20  67 69 66 09 09 53 65 6c  65 63 74 20 47 49 46 20  |gif..Select GIF |
00002b30  6f 75 74 70 75 74 20 66  6f 72 6d 61 74 2e 20 20  |output format.  |
00002b40  53 69 6e 63 65 20 47 49  46 20 64 6f 65 73 20 6e  |Since GIF does n|
00002b50  6f 74 20 73 75 70 70 6f  72 74 0a 09 09 09 6d 6f  |ot support....mo|
00002b60  72 65 20 74 68 61 6e 20  32 35 36 20 63 6f 6c 6f  |re than 256 colo|
00002b70  72 73 2c 20 2d 63 6f 6c  6f 72 73 20 32 35 36 20  |rs, -colors 256 |
00002b80  69 73 20 61 73 73 75 6d  65 64 20 28 75 6e 6c 65  |is assumed (unle|
00002b90  73 73 0a 09 09 09 79 6f  75 20 73 70 65 63 69 66  |ss....you specif|
00002ba0  79 20 61 20 73 6d 61 6c  6c 65 72 20 6e 75 6d 62  |y a smaller numb|
00002bb0  65 72 20 6f 66 20 63 6f  6c 6f 72 73 29 2e 20 20  |er of colors).  |
00002bc0  49 66 20 79 6f 75 0a 09  09 09 73 70 65 63 69 66  |If you....specif|
00002bd0  79 20 2d 66 61 73 74 2c  20 74 68 65 20 64 65 66  |y -fast, the def|
00002be0  61 75 6c 74 20 6e 75 6d  62 65 72 20 6f 66 20 63  |ault number of c|
00002bf0  6f 6c 6f 72 73 20 69 73  20 32 31 36 2e 0a 0a 09  |olors is 216....|
00002c00  2d 6f 73 32 09 09 53 65  6c 65 63 74 20 42 4d 50  |-os2..Select BMP|
00002c10  20 6f 75 74 70 75 74 20  66 6f 72 6d 61 74 20 28  | output format (|
00002c20  4f 53 2f 32 20 31 2e 78  20 66 6c 61 76 6f 72 29  |OS/2 1.x flavor)|
00002c30  2e 20 20 38 2d 62 69 74  0a 09 09 09 63 6f 6c 6f  |.  8-bit....colo|
00002c40  72 6d 61 70 70 65 64 20  66 6f 72 6d 61 74 20 69  |rmapped format i|
00002c50  73 20 65 6d 69 74 74 65  64 20 69 66 20 2d 63 6f  |s emitted if -co|
00002c60  6c 6f 72 73 20 6f 72 20  2d 67 72 61 79 73 63 61  |lors or -graysca|
00002c70  6c 65 0a 09 09 09 69 73  20 73 70 65 63 69 66 69  |le....is specifi|
00002c80  65 64 2c 20 6f 72 20 69  66 20 74 68 65 20 4a 50  |ed, or if the JP|
00002c90  45 47 20 66 69 6c 65 20  69 73 20 67 72 61 79 2d  |EG file is gray-|
00002ca0  73 63 61 6c 65 3b 0a 09  09 09 6f 74 68 65 72 77  |scale;....otherw|
00002cb0  69 73 65 2c 20 32 34 2d  62 69 74 20 66 75 6c 6c  |ise, 24-bit full|
00002cc0  2d 63 6f 6c 6f 72 20 66  6f 72 6d 61 74 20 69 73  |-color format is|
00002cd0  20 65 6d 69 74 74 65 64  2e 0a 0a 09 2d 70 6e 6d  | emitted....-pnm|
00002ce0  09 09 53 65 6c 65 63 74  20 50 42 4d 50 4c 55 53  |..Select PBMPLUS|
00002cf0  20 28 50 50 4d 2f 50 47  4d 29 20 6f 75 74 70 75  | (PPM/PGM) outpu|
00002d00  74 20 66 6f 72 6d 61 74  20 28 74 68 69 73 20 69  |t format (this i|
00002d10  73 20 74 68 65 0a 09 09  09 64 65 66 61 75 6c 74  |s the....default|
00002d20  20 66 6f 72 6d 61 74 29  2e 20 20 50 47 4d 20 69  | format).  PGM i|
00002d30  73 20 65 6d 69 74 74 65  64 20 69 66 20 74 68 65  |s emitted if the|
00002d40  20 4a 50 45 47 20 66 69  6c 65 20 69 73 0a 09 09  | JPEG file is...|
00002d50  09 67 72 61 79 2d 73 63  61 6c 65 20 6f 72 20 69  |.gray-scale or i|
00002d60  66 20 2d 67 72 61 79 73  63 61 6c 65 20 69 73 20  |f -grayscale is |
00002d70  73 70 65 63 69 66 69 65  64 3b 20 6f 74 68 65 72  |specified; other|
00002d80  77 69 73 65 0a 09 09 09  50 50 4d 20 69 73 20 65  |wise....PPM is e|
00002d90  6d 69 74 74 65 64 2e 0a  0a 09 2d 72 6c 65 09 09  |mitted....-rle..|
00002da0  53 65 6c 65 63 74 20 52  4c 45 20 6f 75 74 70 75  |Select RLE outpu|
00002db0  74 20 66 6f 72 6d 61 74  2e 20 20 28 52 65 71 75  |t format.  (Requ|
00002dc0  69 72 65 73 20 55 52 54  20 6c 69 62 72 61 72 79  |ires URT library|
00002dd0  2e 29 0a 0a 09 2d 74 61  72 67 61 09 09 53 65 6c  |.)...-targa..Sel|
00002de0  65 63 74 20 54 61 72 67  61 20 6f 75 74 70 75 74  |ect Targa output|
00002df0  20 66 6f 72 6d 61 74 2e  20 20 47 72 61 79 2d 73  | format.  Gray-s|
00002e00  63 61 6c 65 20 66 6f 72  6d 61 74 20 69 73 0a 09  |cale format is..|
00002e10  09 09 65 6d 69 74 74 65  64 20 69 66 20 74 68 65  |..emitted if the|
00002e20  20 4a 50 45 47 20 66 69  6c 65 20 69 73 20 67 72  | JPEG file is gr|
00002e30  61 79 2d 73 63 61 6c 65  20 6f 72 20 69 66 0a 09  |ay-scale or if..|
00002e40  09 09 2d 67 72 61 79 73  63 61 6c 65 20 69 73 20  |..-grayscale is |
00002e50  73 70 65 63 69 66 69 65  64 3b 20 6f 74 68 65 72  |specified; other|
00002e60  77 69 73 65 2c 20 63 6f  6c 6f 72 6d 61 70 70 65  |wise, colormappe|
00002e70  64 20 66 6f 72 6d 61 74  0a 09 09 09 69 73 20 65  |d format....is e|
00002e80  6d 69 74 74 65 64 20 69  66 20 2d 63 6f 6c 6f 72  |mitted if -color|
00002e90  73 20 69 73 20 73 70 65  63 69 66 69 65 64 3b 20  |s is specified; |
00002ea0  6f 74 68 65 72 77 69 73  65 2c 20 32 34 2d 62 69  |otherwise, 24-bi|
00002eb0  74 0a 09 09 09 66 75 6c  6c 2d 63 6f 6c 6f 72 20  |t....full-color |
00002ec0  66 6f 72 6d 61 74 20 69  73 20 65 6d 69 74 74 65  |format is emitte|
00002ed0  64 2e 0a 0a 53 77 69 74  63 68 65 73 20 66 6f 72  |d...Switches for|
00002ee0  20 61 64 76 61 6e 63 65  64 20 75 73 65 72 73 3a  | advanced users:|
00002ef0  0a 0a 09 2d 64 63 74 20  69 6e 74 09 55 73 65 20  |...-dct int.Use |
00002f00  69 6e 74 65 67 65 72 20  44 43 54 20 6d 65 74 68  |integer DCT meth|
00002f10  6f 64 20 28 64 65 66 61  75 6c 74 29 2e 0a 09 2d  |od (default)...-|
00002f20  64 63 74 20 66 61 73 74  09 55 73 65 20 66 61 73  |dct fast.Use fas|
00002f30  74 20 69 6e 74 65 67 65  72 20 44 43 54 20 28 6c  |t integer DCT (l|
00002f40  65 73 73 20 61 63 63 75  72 61 74 65 29 2e 0a 09  |ess accurate)...|
00002f50  2d 64 63 74 20 66 6c 6f  61 74 09 55 73 65 20 66  |-dct float.Use f|
00002f60  6c 6f 61 74 69 6e 67 2d  70 6f 69 6e 74 20 44 43  |loating-point DC|
00002f70  54 20 6d 65 74 68 6f 64  2e 0a 09 09 09 54 68 65  |T method.....The|
00002f80  20 66 6c 6f 61 74 20 6d  65 74 68 6f 64 20 69 73  | float method is|
00002f90  20 76 65 72 79 20 73 6c  69 67 68 74 6c 79 20 6d  | very slightly m|
00002fa0  6f 72 65 20 61 63 63 75  72 61 74 65 20 74 68 61  |ore accurate tha|
00002fb0  6e 0a 09 09 09 74 68 65  20 69 6e 74 20 6d 65 74  |n....the int met|
00002fc0  68 6f 64 2c 20 62 75 74  20 69 73 20 6d 75 63 68  |hod, but is much|
00002fd0  20 73 6c 6f 77 65 72 20  75 6e 6c 65 73 73 20 79  | slower unless y|
00002fe0  6f 75 72 20 6d 61 63 68  69 6e 65 0a 09 09 09 68  |our machine....h|
00002ff0  61 73 20 76 65 72 79 20  66 61 73 74 20 66 6c 6f  |as very fast flo|
00003000  61 74 69 6e 67 2d 70 6f  69 6e 74 20 68 61 72 64  |ating-point hard|
00003010  77 61 72 65 2e 20 20 41  6c 73 6f 20 6e 6f 74 65  |ware.  Also note|
00003020  20 74 68 61 74 0a 09 09  09 72 65 73 75 6c 74 73  | that....results|
00003030  20 6f 66 20 74 68 65 20  66 6c 6f 61 74 69 6e 67  | of the floating|
00003040  2d 70 6f 69 6e 74 20 6d  65 74 68 6f 64 20 6d 61  |-point method ma|
00003050  79 20 76 61 72 79 20 73  6c 69 67 68 74 6c 79 0a  |y vary slightly.|
00003060  09 09 09 61 63 72 6f 73  73 20 6d 61 63 68 69 6e  |...across machin|
00003070  65 73 2c 20 77 68 69 6c  65 20 74 68 65 20 69 6e  |es, while the in|
00003080  74 65 67 65 72 20 6d 65  74 68 6f 64 73 20 73 68  |teger methods sh|
00003090  6f 75 6c 64 20 67 69 76  65 0a 09 09 09 74 68 65  |ould give....the|
000030a0  20 73 61 6d 65 20 72 65  73 75 6c 74 73 20 65 76  | same results ev|
000030b0  65 72 79 77 68 65 72 65  2e 20 20 54 68 65 20 66  |erywhere.  The f|
000030c0  61 73 74 20 69 6e 74 65  67 65 72 20 6d 65 74 68  |ast integer meth|
000030d0  6f 64 0a 09 09 09 69 73  20 6d 75 63 68 20 6c 65  |od....is much le|
000030e0  73 73 20 61 63 63 75 72  61 74 65 20 74 68 61 6e  |ss accurate than|
000030f0  20 74 68 65 20 6f 74 68  65 72 20 74 77 6f 2e 0a  | the other two..|
00003100  0a 09 2d 64 69 74 68 65  72 20 66 73 09 55 73 65  |..-dither fs.Use|
00003110  20 46 6c 6f 79 64 2d 53  74 65 69 6e 62 65 72 67  | Floyd-Steinberg|
00003120  20 64 69 74 68 65 72 69  6e 67 20 69 6e 20 63 6f  | dithering in co|
00003130  6c 6f 72 20 71 75 61 6e  74 69 7a 61 74 69 6f 6e  |lor quantization|
00003140  2e 0a 09 2d 64 69 74 68  65 72 20 6f 72 64 65 72  |...-dither order|
00003150  65 64 09 55 73 65 20 6f  72 64 65 72 65 64 20 64  |ed.Use ordered d|
00003160  69 74 68 65 72 69 6e 67  20 69 6e 20 63 6f 6c 6f  |ithering in colo|
00003170  72 20 71 75 61 6e 74 69  7a 61 74 69 6f 6e 2e 0a  |r quantization..|
00003180  09 2d 64 69 74 68 65 72  20 6e 6f 6e 65 09 44 6f  |.-dither none.Do|
00003190  20 6e 6f 74 20 75 73 65  20 64 69 74 68 65 72 69  | not use ditheri|
000031a0  6e 67 20 69 6e 20 63 6f  6c 6f 72 20 71 75 61 6e  |ng in color quan|
000031b0  74 69 7a 61 74 69 6f 6e  2e 0a 09 09 09 42 79 20  |tization.....By |
000031c0  64 65 66 61 75 6c 74 2c  20 46 6c 6f 79 64 2d 53  |default, Floyd-S|
000031d0  74 65 69 6e 62 65 72 67  20 64 69 74 68 65 72 69  |teinberg ditheri|
000031e0  6e 67 20 69 73 20 61 70  70 6c 69 65 64 20 77 68  |ng is applied wh|
000031f0  65 6e 0a 09 09 09 71 75  61 6e 74 69 7a 69 6e 67  |en....quantizing|
00003200  20 63 6f 6c 6f 72 73 3b  20 74 68 69 73 20 69 73  | colors; this is|
00003210  20 73 6c 6f 77 20 62 75  74 20 75 73 75 61 6c 6c  | slow but usuall|
00003220  79 20 70 72 6f 64 75 63  65 73 0a 09 09 09 74 68  |y produces....th|
00003230  65 20 62 65 73 74 20 72  65 73 75 6c 74 73 2e 20  |e best results. |
00003240  20 4f 72 64 65 72 65 64  20 64 69 74 68 65 72 20  | Ordered dither |
00003250  69 73 20 61 20 63 6f 6d  70 72 6f 6d 69 73 65 0a  |is a compromise.|
00003260  09 09 09 62 65 74 77 65  65 6e 20 73 70 65 65 64  |...between speed|
00003270  20 61 6e 64 20 71 75 61  6c 69 74 79 3b 20 6e 6f  | and quality; no|
00003280  20 64 69 74 68 65 72 69  6e 67 20 69 73 20 66 61  | dithering is fa|
00003290  73 74 20 62 75 74 0a 09  09 09 75 73 75 61 6c 6c  |st but....usuall|
000032a0  79 20 6c 6f 6f 6b 73 20  61 77 66 75 6c 2e 20 20  |y looks awful.  |
000032b0  4e 6f 74 65 20 74 68 61  74 20 74 68 65 73 65 20  |Note that these |
000032c0  73 77 69 74 63 68 65 73  20 68 61 76 65 0a 09 09  |switches have...|
000032d0  09 6e 6f 20 65 66 66 65  63 74 20 75 6e 6c 65 73  |.no effect unles|
000032e0  73 20 63 6f 6c 6f 72 20  71 75 61 6e 74 69 7a 61  |s color quantiza|
000032f0  74 69 6f 6e 20 69 73 20  62 65 69 6e 67 20 64 6f  |tion is being do|
00003300  6e 65 2e 0a 09 09 09 4f  72 64 65 72 65 64 20 64  |ne.....Ordered d|
00003310  69 74 68 65 72 20 69 73  20 6f 6e 6c 79 20 61 76  |ither is only av|
00003320  61 69 6c 61 62 6c 65 20  69 6e 20 2d 6f 6e 65 70  |ailable in -onep|
00003330  61 73 73 20 6d 6f 64 65  2e 0a 0a 09 2d 6d 61 70  |ass mode....-map|
00003340  20 46 49 4c 45 09 51 75  61 6e 74 69 7a 65 20 74  | FILE.Quantize t|
00003350  6f 20 74 68 65 20 63 6f  6c 6f 72 73 20 75 73 65  |o the colors use|
00003360  64 20 69 6e 20 74 68 65  20 73 70 65 63 69 66 69  |d in the specifi|
00003370  65 64 20 69 6d 61 67 65  0a 09 09 09 66 69 6c 65  |ed image....file|
00003380  2e 20 20 54 68 69 73 20  69 73 20 75 73 65 66 75  |.  This is usefu|
00003390  6c 20 66 6f 72 20 70 72  6f 64 75 63 69 6e 67 20  |l for producing |
000033a0  6d 75 6c 74 69 70 6c 65  20 66 69 6c 65 73 0a 09  |multiple files..|
000033b0  09 09 77 69 74 68 20 69  64 65 6e 74 69 63 61 6c  |..with identical|
000033c0  20 63 6f 6c 6f 72 20 6d  61 70 73 2c 20 6f 72 20  | color maps, or |
000033d0  66 6f 72 20 66 6f 72 63  69 6e 67 20 61 20 70 72  |for forcing a pr|
000033e0  65 64 65 66 69 6e 65 64  0a 09 09 09 73 65 74 20  |edefined....set |
000033f0  6f 66 20 63 6f 6c 6f 72  73 20 74 6f 20 62 65 20  |of colors to be |
00003400  75 73 65 64 2e 20 20 54  68 65 20 46 49 4c 45 20  |used.  The FILE |
00003410  6d 75 73 74 20 62 65 20  61 20 47 49 46 0a 09 09  |must be a GIF...|
00003420  09 6f 72 20 50 50 4d 20  66 69 6c 65 2e 20 20 54  |.or PPM file.  T|
00003430  68 69 73 20 6f 70 74 69  6f 6e 20 6f 76 65 72 72  |his option overr|
00003440  69 64 65 73 20 2d 63 6f  6c 6f 72 73 20 61 6e 64  |ides -colors and|
00003450  0a 09 09 09 2d 6f 6e 65  70 61 73 73 2e 0a 0a 09  |....-onepass....|
00003460  2d 6e 6f 73 6d 6f 6f 74  68 09 55 73 65 20 61 20  |-nosmooth.Use a |
00003470  66 61 73 74 65 72 2c 20  6c 6f 77 65 72 2d 71 75  |faster, lower-qu|
00003480  61 6c 69 74 79 20 75 70  73 61 6d 70 6c 69 6e 67  |ality upsampling|
00003490  20 72 6f 75 74 69 6e 65  2e 0a 0a 09 2d 6f 6e 65  | routine....-one|
000034a0  70 61 73 73 09 55 73 65  20 6f 6e 65 2d 70 61 73  |pass.Use one-pas|
000034b0  73 20 69 6e 73 74 65 61  64 20 6f 66 20 74 77 6f  |s instead of two|
000034c0  2d 70 61 73 73 20 63 6f  6c 6f 72 20 71 75 61 6e  |-pass color quan|
000034d0  74 69 7a 61 74 69 6f 6e  2e 0a 09 09 09 54 68 65  |tization.....The|
000034e0  20 6f 6e 65 2d 70 61 73  73 20 6d 65 74 68 6f 64  | one-pass method|
000034f0  20 69 73 20 66 61 73 74  65 72 20 61 6e 64 20 6e  | is faster and n|
00003500  65 65 64 73 20 6c 65 73  73 20 6d 65 6d 6f 72 79  |eeds less memory|
00003510  2c 0a 09 09 09 62 75 74  20 69 74 20 70 72 6f 64  |,....but it prod|
00003520  75 63 65 73 20 61 20 6c  6f 77 65 72 2d 71 75 61  |uces a lower-qua|
00003530  6c 69 74 79 20 69 6d 61  67 65 2e 20 20 2d 6f 6e  |lity image.  -on|
00003540  65 70 61 73 73 20 69 73  0a 09 09 09 69 67 6e 6f  |epass is....igno|
00003550  72 65 64 20 75 6e 6c 65  73 73 20 79 6f 75 20 61  |red unless you a|
00003560  6c 73 6f 20 73 61 79 20  2d 63 6f 6c 6f 72 73 20  |lso say -colors |
00003570  4e 2e 20 20 41 6c 73 6f  2c 0a 09 09 09 74 68 65  |N.  Also,....the|
00003580  20 6f 6e 65 2d 70 61 73  73 20 6d 65 74 68 6f 64  | one-pass method|
00003590  20 69 73 20 61 6c 77 61  79 73 20 75 73 65 64 20  | is always used |
000035a0  66 6f 72 20 67 72 61 79  2d 73 63 61 6c 65 0a 09  |for gray-scale..|
000035b0  09 09 6f 75 74 70 75 74  20 28 74 68 65 20 74 77  |..output (the tw|
000035c0  6f 2d 70 61 73 73 20 6d  65 74 68 6f 64 20 69 73  |o-pass method is|
000035d0  20 6e 6f 20 69 6d 70 72  6f 76 65 6d 65 6e 74 20  | no improvement |
000035e0  74 68 65 6e 29 2e 0a 0a  09 2d 6d 61 78 6d 65 6d  |then)....-maxmem|
000035f0  6f 72 79 20 4e 09 53 65  74 20 6c 69 6d 69 74 20  |ory N.Set limit |
00003600  66 6f 72 20 61 6d 6f 75  6e 74 20 6f 66 20 6d 65  |for amount of me|
00003610  6d 6f 72 79 20 74 6f 20  75 73 65 20 69 6e 20 70  |mory to use in p|
00003620  72 6f 63 65 73 73 69 6e  67 0a 09 09 09 6c 61 72  |rocessing....lar|
00003630  67 65 20 69 6d 61 67 65  73 2e 20 20 56 61 6c 75  |ge images.  Valu|
00003640  65 20 69 73 20 69 6e 20  74 68 6f 75 73 61 6e 64  |e is in thousand|
00003650  73 20 6f 66 20 62 79 74  65 73 2c 20 6f 72 0a 09  |s of bytes, or..|
00003660  09 09 6d 69 6c 6c 69 6f  6e 73 20 6f 66 20 62 79  |..millions of by|
00003670  74 65 73 20 69 66 20 22  4d 22 20 69 73 20 61 74  |tes if "M" is at|
00003680  74 61 63 68 65 64 20 74  6f 20 74 68 65 20 6e 75  |tached to the nu|
00003690  6d 62 65 72 2e 0a 09 09  09 46 6f 72 20 65 78 61  |mber.....For exa|
000036a0  6d 70 6c 65 2c 20 2d 6d  61 78 20 34 6d 20 73 65  |mple, -max 4m se|
000036b0  6c 65 63 74 73 20 34 30  30 30 30 30 30 20 62 79  |lects 4000000 by|
000036c0  74 65 73 2e 20 20 49 66  20 6d 6f 72 65 0a 09 09  |tes.  If more...|
000036d0  09 73 70 61 63 65 20 69  73 20 6e 65 65 64 65 64  |.space is needed|
000036e0  2c 20 74 65 6d 70 6f 72  61 72 79 20 66 69 6c 65  |, temporary file|
000036f0  73 20 77 69 6c 6c 20 62  65 20 75 73 65 64 2e 0a  |s will be used..|
00003700  0a 09 2d 76 65 72 62 6f  73 65 09 45 6e 61 62 6c  |..-verbose.Enabl|
00003710  65 20 64 65 62 75 67 20  70 72 69 6e 74 6f 75 74  |e debug printout|
00003720  2e 20 20 4d 6f 72 65 20  2d 76 27 73 20 67 69 76  |.  More -v's giv|
00003730  65 20 6d 6f 72 65 20 70  72 69 6e 74 6f 75 74 2e  |e more printout.|
00003740  0a 09 6f 72 20 20 2d 64  65 62 75 67 09 41 6c 73  |..or  -debug.Als|
00003750  6f 2c 20 76 65 72 73 69  6f 6e 20 69 6e 66 6f 72  |o, version infor|
00003760  6d 61 74 69 6f 6e 20 69  73 20 70 72 69 6e 74 65  |mation is printe|
00003770  64 20 61 74 20 73 74 61  72 74 75 70 2e 0a 0a 0a  |d at startup....|
00003780  48 49 4e 54 53 20 46 4f  52 20 43 4a 50 45 47 0a  |HINTS FOR CJPEG.|
00003790  0a 43 6f 6c 6f 72 20 47  49 46 20 66 69 6c 65 73  |.Color GIF files|
000037a0  20 61 72 65 20 6e 6f 74  20 74 68 65 20 69 64 65  | are not the ide|
000037b0  61 6c 20 69 6e 70 75 74  20 66 6f 72 20 4a 50 45  |al input for JPE|
000037c0  47 3b 20 4a 50 45 47 20  69 73 20 72 65 61 6c 6c  |G; JPEG is reall|
000037d0  79 20 69 6e 74 65 6e 64  65 64 20 66 6f 72 0a 63  |y intended for.c|
000037e0  6f 6d 70 72 65 73 73 69  6e 67 20 66 75 6c 6c 2d  |ompressing full-|
000037f0  63 6f 6c 6f 72 20 28 32  34 2d 62 69 74 29 20 69  |color (24-bit) i|
00003800  6d 61 67 65 73 2e 20 20  49 6e 20 70 61 72 74 69  |mages.  In parti|
00003810  63 75 6c 61 72 2c 20 64  6f 6e 27 74 20 74 72 79  |cular, don't try|
00003820  20 74 6f 20 63 6f 6e 76  65 72 74 0a 63 61 72 74  | to convert.cart|
00003830  6f 6f 6e 73 2c 20 6c 69  6e 65 20 64 72 61 77 69  |oons, line drawi|
00003840  6e 67 73 2c 20 61 6e 64  20 6f 74 68 65 72 20 69  |ngs, and other i|
00003850  6d 61 67 65 73 20 74 68  61 74 20 68 61 76 65 20  |mages that have |
00003860  6f 6e 6c 79 20 61 20 66  65 77 20 64 69 73 74 69  |only a few disti|
00003870  6e 63 74 0a 63 6f 6c 6f  72 73 2e 20 20 47 49 46  |nct.colors.  GIF|
00003880  20 77 6f 72 6b 73 20 67  72 65 61 74 20 6f 6e 20  | works great on |
00003890  74 68 65 73 65 2c 20 4a  50 45 47 20 64 6f 65 73  |these, JPEG does|
000038a0  20 6e 6f 74 2e 20 20 49  66 20 79 6f 75 20 77 61  | not.  If you wa|
000038b0  6e 74 20 74 6f 20 63 6f  6e 76 65 72 74 20 61 0a  |nt to convert a.|
000038c0  47 49 46 20 74 6f 20 4a  50 45 47 2c 20 79 6f 75  |GIF to JPEG, you|
000038d0  20 73 68 6f 75 6c 64 20  65 78 70 65 72 69 6d 65  | should experime|
000038e0  6e 74 20 77 69 74 68 20  63 6a 70 65 67 27 73 20  |nt with cjpeg's |
000038f0  2d 71 75 61 6c 69 74 79  20 61 6e 64 20 2d 73 6d  |-quality and -sm|
00003900  6f 6f 74 68 20 6f 70 74  69 6f 6e 73 0a 74 6f 20  |ooth options.to |
00003910  67 65 74 20 61 20 73 61  74 69 73 66 61 63 74 6f  |get a satisfacto|
00003920  72 79 20 63 6f 6e 76 65  72 73 69 6f 6e 2e 20 20  |ry conversion.  |
00003930  2d 73 6d 6f 6f 74 68 20  31 30 20 6f 72 20 73 6f  |-smooth 10 or so|
00003940  20 69 73 20 6f 66 74 65  6e 20 68 65 6c 70 66 75  | is often helpfu|
00003950  6c 2e 0a 0a 41 76 6f 69  64 20 72 75 6e 6e 69 6e  |l...Avoid runnin|
00003960  67 20 61 6e 20 69 6d 61  67 65 20 74 68 72 6f 75  |g an image throu|
00003970  67 68 20 61 20 73 65 72  69 65 73 20 6f 66 20 4a  |gh a series of J|
00003980  50 45 47 20 63 6f 6d 70  72 65 73 73 69 6f 6e 2f  |PEG compression/|
00003990  64 65 63 6f 6d 70 72 65  73 73 69 6f 6e 0a 63 79  |decompression.cy|
000039a0  63 6c 65 73 2e 20 20 49  6d 61 67 65 20 71 75 61  |cles.  Image qua|
000039b0  6c 69 74 79 20 6c 6f 73  73 20 77 69 6c 6c 20 61  |lity loss will a|
000039c0  63 63 75 6d 75 6c 61 74  65 3b 20 61 66 74 65 72  |ccumulate; after|
000039d0  20 74 65 6e 20 6f 72 20  73 6f 20 63 79 63 6c 65  | ten or so cycle|
000039e0  73 20 74 68 65 20 69 6d  61 67 65 0a 6d 61 79 20  |s the image.may |
000039f0  62 65 20 6e 6f 74 69 63  65 61 62 6c 79 20 77 6f  |be noticeably wo|
00003a00  72 73 65 20 74 68 61 6e  20 69 74 20 77 61 73 20  |rse than it was |
00003a10  61 66 74 65 72 20 6f 6e  65 20 63 79 63 6c 65 2e  |after one cycle.|
00003a20  20 20 49 74 27 73 20 62  65 73 74 20 74 6f 20 75  |  It's best to u|
00003a30  73 65 20 61 0a 6c 6f 73  73 6c 65 73 73 20 66 6f  |se a.lossless fo|
00003a40  72 6d 61 74 20 77 68 69  6c 65 20 6d 61 6e 69 70  |rmat while manip|
00003a50  75 6c 61 74 69 6e 67 20  61 6e 20 69 6d 61 67 65  |ulating an image|
00003a60  2c 20 74 68 65 6e 20 63  6f 6e 76 65 72 74 20 74  |, then convert t|
00003a70  6f 20 4a 50 45 47 20 66  6f 72 6d 61 74 20 77 68  |o JPEG format wh|
00003a80  65 6e 0a 79 6f 75 20 61  72 65 20 72 65 61 64 79  |en.you are ready|
00003a90  20 74 6f 20 66 69 6c 65  20 74 68 65 20 69 6d 61  | to file the ima|
00003aa0  67 65 20 61 77 61 79 2e  0a 0a 54 68 65 20 2d 6f  |ge away...The -o|
00003ab0  70 74 69 6d 69 7a 65 20  6f 70 74 69 6f 6e 20 74  |ptimize option t|
00003ac0  6f 20 63 6a 70 65 67 20  69 73 20 77 6f 72 74 68  |o cjpeg is worth|
00003ad0  20 75 73 69 6e 67 20 77  68 65 6e 20 79 6f 75 20  | using when you |
00003ae0  61 72 65 20 6d 61 6b 69  6e 67 20 61 20 22 66 69  |are making a "fi|
00003af0  6e 61 6c 22 0a 76 65 72  73 69 6f 6e 20 66 6f 72  |nal".version for|
00003b00  20 70 6f 73 74 69 6e 67  20 6f 72 20 61 72 63 68  | posting or arch|
00003b10  69 76 69 6e 67 2e 20 20  49 74 27 73 20 61 6c 73  |iving.  It's als|
00003b20  6f 20 61 20 77 69 6e 20  77 68 65 6e 20 79 6f 75  |o a win when you|
00003b30  20 61 72 65 20 75 73 69  6e 67 20 6c 6f 77 0a 71  | are using low.q|
00003b40  75 61 6c 69 74 79 20 73  65 74 74 69 6e 67 73 20  |uality settings |
00003b50  74 6f 20 6d 61 6b 65 20  76 65 72 79 20 73 6d 61  |to make very sma|
00003b60  6c 6c 20 4a 50 45 47 20  66 69 6c 65 73 3b 20 74  |ll JPEG files; t|
00003b70  68 65 20 70 65 72 63 65  6e 74 61 67 65 20 69 6d  |he percentage im|
00003b80  70 72 6f 76 65 6d 65 6e  74 0a 69 73 20 6f 66 74  |provement.is oft|
00003b90  65 6e 20 61 20 6c 6f 74  20 6d 6f 72 65 20 74 68  |en a lot more th|
00003ba0  61 6e 20 69 74 20 69 73  20 6f 6e 20 6c 61 72 67  |an it is on larg|
00003bb0  65 72 20 66 69 6c 65 73  2e 20 20 28 41 74 20 70  |er files.  (At p|
00003bc0  72 65 73 65 6e 74 2c 20  2d 6f 70 74 69 6d 69 7a  |resent, -optimiz|
00003bd0  65 0a 6d 6f 64 65 20 69  73 20 61 6c 77 61 79 73  |e.mode is always|
00003be0  20 73 65 6c 65 63 74 65  64 20 77 68 65 6e 20 67  | selected when g|
00003bf0  65 6e 65 72 61 74 69 6e  67 20 70 72 6f 67 72 65  |enerating progre|
00003c00  73 73 69 76 65 20 4a 50  45 47 20 66 69 6c 65 73  |ssive JPEG files|
00003c10  2e 29 0a 0a 0a 48 49 4e  54 53 20 46 4f 52 20 44  |.)...HINTS FOR D|
00003c20  4a 50 45 47 0a 0a 54 6f  20 67 65 74 20 61 20 71  |JPEG..To get a q|
00003c30  75 69 63 6b 20 70 72 65  76 69 65 77 20 6f 66 20  |uick preview of |
00003c40  61 6e 20 69 6d 61 67 65  2c 20 75 73 65 20 74 68  |an image, use th|
00003c50  65 20 2d 67 72 61 79 73  63 61 6c 65 20 61 6e 64  |e -grayscale and|
00003c60  2f 6f 72 20 2d 73 63 61  6c 65 20 73 77 69 74 63  |/or -scale switc|
00003c70  68 65 73 2e 0a 22 2d 67  72 61 79 73 63 61 6c 65  |hes.."-grayscale|
00003c80  20 2d 73 63 61 6c 65 20  31 2f 38 22 20 69 73 20  | -scale 1/8" is |
00003c90  74 68 65 20 66 61 73 74  65 73 74 20 63 61 73 65  |the fastest case|
00003ca0  2e 0a 0a 53 65 76 65 72  61 6c 20 6f 70 74 69 6f  |...Several optio|
00003cb0  6e 73 20 61 72 65 20 61  76 61 69 6c 61 62 6c 65  |ns are available|
00003cc0  20 74 68 61 74 20 74 72  61 64 65 20 6f 66 66 20  | that trade off |
00003cd0  69 6d 61 67 65 20 71 75  61 6c 69 74 79 20 74 6f  |image quality to|
00003ce0  20 67 61 69 6e 20 73 70  65 65 64 2e 0a 22 2d 66  | gain speed.."-f|
00003cf0  61 73 74 22 20 74 75 72  6e 73 20 6f 6e 20 74 68  |ast" turns on th|
00003d00  65 20 72 65 63 6f 6d 6d  65 6e 64 65 64 20 73 65  |e recommended se|
00003d10  74 74 69 6e 67 73 2e 0a  0a 22 2d 64 63 74 20 66  |ttings..."-dct f|
00003d20  61 73 74 22 20 61 6e 64  2f 6f 72 20 22 2d 6e 6f  |ast" and/or "-no|
00003d30  73 6d 6f 6f 74 68 22 20  67 61 69 6e 20 73 70 65  |smooth" gain spe|
00003d40  65 64 20 61 74 20 61 20  73 6d 61 6c 6c 20 73 61  |ed at a small sa|
00003d50  63 72 69 66 69 63 65 20  69 6e 20 71 75 61 6c 69  |crifice in quali|
00003d60  74 79 2e 0a 57 68 65 6e  20 70 72 6f 64 75 63 69  |ty..When produci|
00003d70  6e 67 20 61 20 63 6f 6c  6f 72 2d 71 75 61 6e 74  |ng a color-quant|
00003d80  69 7a 65 64 20 69 6d 61  67 65 2c 20 22 2d 6f 6e  |ized image, "-on|
00003d90  65 70 61 73 73 20 2d 64  69 74 68 65 72 20 6f 72  |epass -dither or|
00003da0  64 65 72 65 64 22 20 69  73 20 66 61 73 74 20 62  |dered" is fast b|
00003db0  75 74 0a 6d 75 63 68 20  6c 6f 77 65 72 20 71 75  |ut.much lower qu|
00003dc0  61 6c 69 74 79 20 74 68  61 6e 20 74 68 65 20 64  |ality than the d|
00003dd0  65 66 61 75 6c 74 20 62  65 68 61 76 69 6f 72 2e  |efault behavior.|
00003de0  20 20 22 2d 64 69 74 68  65 72 20 6e 6f 6e 65 22  |  "-dither none"|
00003df0  20 6d 61 79 20 67 69 76  65 0a 61 63 63 65 70 74  | may give.accept|
00003e00  61 62 6c 65 20 72 65 73  75 6c 74 73 20 69 6e 20  |able results in |
00003e10  74 77 6f 2d 70 61 73 73  20 6d 6f 64 65 2c 20 62  |two-pass mode, b|
00003e20  75 74 20 69 73 20 73 65  6c 64 6f 6d 20 74 6f 6c  |ut is seldom tol|
00003e30  65 72 61 62 6c 65 20 69  6e 20 6f 6e 65 2d 70 61  |erable in one-pa|
00003e40  73 73 20 6d 6f 64 65 2e  0a 0a 49 66 20 79 6f 75  |ss mode...If you|
00003e50  20 61 72 65 20 66 6f 72  74 75 6e 61 74 65 20 65  | are fortunate e|
00003e60  6e 6f 75 67 68 20 74 6f  20 68 61 76 65 20 76 65  |nough to have ve|
00003e70  72 79 20 66 61 73 74 20  66 6c 6f 61 74 69 6e 67  |ry fast floating|
00003e80  20 70 6f 69 6e 74 20 68  61 72 64 77 61 72 65 2c  | point hardware,|
00003e90  0a 22 2d 64 63 74 20 66  6c 6f 61 74 22 20 6d 61  |."-dct float" ma|
00003ea0  79 20 62 65 20 65 76 65  6e 20 66 61 73 74 65 72  |y be even faster|
00003eb0  20 74 68 61 6e 20 22 2d  64 63 74 20 66 61 73 74  | than "-dct fast|
00003ec0  22 2e 20 20 42 75 74 20  6f 6e 20 6d 6f 73 74 20  |".  But on most |
00003ed0  6d 61 63 68 69 6e 65 73  0a 22 2d 64 63 74 20 66  |machines."-dct f|
00003ee0  6c 6f 61 74 22 20 69 73  20 73 6c 6f 77 65 72 20  |loat" is slower |
00003ef0  74 68 61 6e 20 22 2d 64  63 74 20 69 6e 74 22 3b  |than "-dct int";|
00003f00  20 69 6e 20 74 68 69 73  20 63 61 73 65 20 69 74  | in this case it|
00003f10  20 69 73 20 6e 6f 74 20  77 6f 72 74 68 20 75 73  | is not worth us|
00003f20  69 6e 67 2c 0a 62 65 63  61 75 73 65 20 69 74 73  |ing,.because its|
00003f30  20 74 68 65 6f 72 65 74  69 63 61 6c 20 61 63 63  | theoretical acc|
00003f40  75 72 61 63 79 20 61 64  76 61 6e 74 61 67 65 20  |uracy advantage |
00003f50  69 73 20 74 6f 6f 20 73  6d 61 6c 6c 20 74 6f 20  |is too small to |
00003f60  62 65 20 73 69 67 6e 69  66 69 63 61 6e 74 0a 69  |be significant.i|
00003f70  6e 20 70 72 61 63 74 69  63 65 2e 0a 0a 54 77 6f  |n practice...Two|
00003f80  2d 70 61 73 73 20 63 6f  6c 6f 72 20 71 75 61 6e  |-pass color quan|
00003f90  74 69 7a 61 74 69 6f 6e  20 72 65 71 75 69 72 65  |tization require|
00003fa0  73 20 61 20 67 6f 6f 64  20 64 65 61 6c 20 6f 66  |s a good deal of|
00003fb0  20 6d 65 6d 6f 72 79 3b  20 6f 6e 20 4d 53 2d 44  | memory; on MS-D|
00003fc0  4f 53 20 6d 61 63 68 69  6e 65 73 0a 69 74 20 6d  |OS machines.it m|
00003fd0  61 79 20 72 75 6e 20 6f  75 74 20 6f 66 20 6d 65  |ay run out of me|
00003fe0  6d 6f 72 79 20 65 76 65  6e 20 77 69 74 68 20 2d  |mory even with -|
00003ff0  6d 61 78 6d 65 6d 6f 72  79 20 30 2e 20 20 49 6e  |maxmemory 0.  In|
00004000  20 74 68 61 74 20 63 61  73 65 20 79 6f 75 20 63  | that case you c|
00004010  61 6e 20 73 74 69 6c 6c  0a 64 65 63 6f 6d 70 72  |an still.decompr|
00004020  65 73 73 2c 20 77 69 74  68 20 73 6f 6d 65 20 6c  |ess, with some l|
00004030  6f 73 73 20 6f 66 20 69  6d 61 67 65 20 71 75 61  |oss of image qua|
00004040  6c 69 74 79 2c 20 62 79  20 73 70 65 63 69 66 79  |lity, by specify|
00004050  69 6e 67 20 2d 6f 6e 65  70 61 73 73 20 66 6f 72  |ing -onepass for|
00004060  0a 6f 6e 65 2d 70 61 73  73 20 71 75 61 6e 74 69  |.one-pass quanti|
00004070  7a 61 74 69 6f 6e 2e 0a  0a 0a 48 49 4e 54 53 20  |zation....HINTS |
00004080  46 4f 52 20 42 4f 54 48  20 50 52 4f 47 52 41 4d  |FOR BOTH PROGRAM|
00004090  53 0a 0a 49 66 20 6d 6f  72 65 20 73 70 61 63 65  |S..If more space|
000040a0  20 69 73 20 6e 65 65 64  65 64 20 74 68 61 6e 20  | is needed than |
000040b0  77 69 6c 6c 20 66 69 74  20 69 6e 20 74 68 65 20  |will fit in the |
000040c0  61 76 61 69 6c 61 62 6c  65 20 6d 61 69 6e 20 6d  |available main m|
000040d0  65 6d 6f 72 79 20 28 61  73 0a 64 65 74 65 72 6d  |emory (as.determ|
000040e0  69 6e 65 64 20 62 79 20  2d 6d 61 78 6d 65 6d 6f  |ined by -maxmemo|
000040f0  72 79 29 2c 20 74 65 6d  70 6f 72 61 72 79 20 66  |ry), temporary f|
00004100  69 6c 65 73 20 77 69 6c  6c 20 62 65 20 75 73 65  |iles will be use|
00004110  64 2e 20 20 28 4d 53 2d  44 4f 53 20 76 65 72 73  |d.  (MS-DOS vers|
00004120  69 6f 6e 73 0a 77 69 6c  6c 20 74 72 79 20 74 6f  |ions.will try to|
00004130  20 67 65 74 20 65 78 74  65 6e 64 65 64 20 6f 72  | get extended or|
00004140  20 65 78 70 61 6e 64 65  64 20 6d 65 6d 6f 72 79  | expanded memory|
00004150  20 66 69 72 73 74 2e 29  20 20 54 68 65 20 74 65  | first.)  The te|
00004160  6d 70 6f 72 61 72 79 20  66 69 6c 65 73 20 61 72  |mporary files ar|
00004170  65 0a 6f 66 74 65 6e 20  72 61 74 68 65 72 20 6c  |e.often rather l|
00004180  61 72 67 65 3a 20 69 6e  20 74 79 70 69 63 61 6c  |arge: in typical|
00004190  20 63 61 73 65 73 20 74  68 65 79 20 6f 63 63 75  | cases they occu|
000041a0  70 79 20 74 68 72 65 65  20 62 79 74 65 73 20 70  |py three bytes p|
000041b0  65 72 20 70 69 78 65 6c  2c 20 66 6f 72 0a 65 78  |er pixel, for.ex|
000041c0  61 6d 70 6c 65 20 33 2a  38 30 30 2a 36 30 30 20  |ample 3*800*600 |
000041d0  3d 20 31 2e 34 34 4d 62  20 66 6f 72 20 61 6e 20  |= 1.44Mb for an |
000041e0  38 30 30 78 36 30 30 20  69 6d 61 67 65 2e 20 20  |800x600 image.  |
000041f0  49 66 20 79 6f 75 20 64  6f 6e 27 74 20 68 61 76  |If you don't hav|
00004200  65 20 65 6e 6f 75 67 68  0a 66 72 65 65 20 64 69  |e enough.free di|
00004210  73 6b 20 73 70 61 63 65  2c 20 6c 65 61 76 65 20  |sk space, leave |
00004220  6f 75 74 20 2d 70 72 6f  67 72 65 73 73 69 76 65  |out -progressive|
00004230  20 61 6e 64 20 2d 6f 70  74 69 6d 69 7a 65 20 28  | and -optimize (|
00004240  66 6f 72 20 63 6a 70 65  67 29 20 6f 72 20 73 70  |for cjpeg) or sp|
00004250  65 63 69 66 79 0a 2d 6f  6e 65 70 61 73 73 20 28  |ecify.-onepass (|
00004260  66 6f 72 20 64 6a 70 65  67 29 2e 0a 0a 4f 6e 20  |for djpeg)...On |
00004270  4d 53 2d 44 4f 53 2c 20  74 68 65 20 74 65 6d 70  |MS-DOS, the temp|
00004280  6f 72 61 72 79 20 66 69  6c 65 73 20 61 72 65 20  |orary files are |
00004290  63 72 65 61 74 65 64 20  69 6e 20 74 68 65 20 64  |created in the d|
000042a0  69 72 65 63 74 6f 72 79  20 6e 61 6d 65 64 20 62  |irectory named b|
000042b0  79 20 74 68 65 20 54 4d  50 0a 6f 72 20 54 45 4d  |y the TMP.or TEM|
000042c0  50 20 65 6e 76 69 72 6f  6e 6d 65 6e 74 20 76 61  |P environment va|
000042d0  72 69 61 62 6c 65 2c 20  6f 72 20 69 6e 20 74 68  |riable, or in th|
000042e0  65 20 63 75 72 72 65 6e  74 20 64 69 72 65 63 74  |e current direct|
000042f0  6f 72 79 20 69 66 20 6e  65 69 74 68 65 72 20 6f  |ory if neither o|
00004300  66 20 74 68 6f 73 65 0a  65 78 69 73 74 2e 20 20  |f those.exist.  |
00004310  41 6d 69 67 61 20 69 6d  70 6c 65 6d 65 6e 74 61  |Amiga implementa|
00004320  74 69 6f 6e 73 20 70 75  74 20 74 68 65 20 74 65  |tions put the te|
00004330  6d 70 20 66 69 6c 65 73  20 69 6e 20 74 68 65 20  |mp files in the |
00004340  64 69 72 65 63 74 6f 72  79 20 6e 61 6d 65 64 20  |directory named |
00004350  62 79 0a 4a 50 45 47 54  4d 50 3a 2c 20 73 6f 20  |by.JPEGTMP:, so |
00004360  62 65 20 73 75 72 65 20  74 6f 20 61 73 73 69 67  |be sure to assig|
00004370  6e 20 4a 50 45 47 54 4d  50 3a 20 74 6f 20 61 20  |n JPEGTMP: to a |
00004380  64 69 73 6b 20 70 61 72  74 69 74 69 6f 6e 20 77  |disk partition w|
00004390  69 74 68 20 61 64 65 71  75 61 74 65 20 66 72 65  |ith adequate fre|
000043a0  65 0a 73 70 61 63 65 2e  0a 0a 54 68 65 20 64 65  |e.space...The de|
000043b0  66 61 75 6c 74 20 6d 65  6d 6f 72 79 20 75 73 61  |fault memory usa|
000043c0  67 65 20 6c 69 6d 69 74  20 28 2d 6d 61 78 6d 65  |ge limit (-maxme|
000043d0  6d 6f 72 79 29 20 69 73  20 73 65 74 20 77 68 65  |mory) is set whe|
000043e0  6e 20 74 68 65 20 73 6f  66 74 77 61 72 65 20 69  |n the software i|
000043f0  73 0a 63 6f 6d 70 69 6c  65 64 2e 20 20 49 66 20  |s.compiled.  If |
00004400  79 6f 75 20 67 65 74 20  61 6e 20 22 69 6e 73 75  |you get an "insu|
00004410  66 66 69 63 69 65 6e 74  20 6d 65 6d 6f 72 79 22  |fficient memory"|
00004420  20 65 72 72 6f 72 2c 20  74 72 79 20 73 70 65 63  | error, try spec|
00004430  69 66 79 69 6e 67 20 61  20 73 6d 61 6c 6c 65 72  |ifying a smaller|
00004440  0a 2d 6d 61 78 6d 65 6d  6f 72 79 20 76 61 6c 75  |.-maxmemory valu|
00004450  65 2c 20 65 76 65 6e 20  2d 6d 61 78 6d 65 6d 6f  |e, even -maxmemo|
00004460  72 79 20 30 20 74 6f 20  75 73 65 20 74 68 65 20  |ry 0 to use the |
00004470  61 62 73 6f 6c 75 74 65  20 6d 69 6e 69 6d 75 6d  |absolute minimum|
00004480  20 73 70 61 63 65 2e 20  20 59 6f 75 0a 6d 61 79  | space.  You.may|
00004490  20 77 61 6e 74 20 74 6f  20 72 65 63 6f 6d 70 69  | want to recompi|
000044a0  6c 65 20 77 69 74 68 20  61 20 73 6d 61 6c 6c 65  |le with a smalle|
000044b0  72 20 64 65 66 61 75 6c  74 20 76 61 6c 75 65 20  |r default value |
000044c0  69 66 20 74 68 69 73 20  68 61 70 70 65 6e 73 20  |if this happens |
000044d0  6f 66 74 65 6e 2e 0a 0a  4f 6e 20 6d 61 63 68 69  |often...On machi|
000044e0  6e 65 73 20 74 68 61 74  20 68 61 76 65 20 22 65  |nes that have "e|
000044f0  6e 76 69 72 6f 6e 6d 65  6e 74 22 20 76 61 72 69  |nvironment" vari|
00004500  61 62 6c 65 73 2c 20 79  6f 75 20 63 61 6e 20 64  |ables, you can d|
00004510  65 66 69 6e 65 20 74 68  65 20 65 6e 76 69 72 6f  |efine the enviro|
00004520  6e 6d 65 6e 74 0a 76 61  72 69 61 62 6c 65 20 4a  |nment.variable J|
00004530  50 45 47 4d 45 4d 20 74  6f 20 73 65 74 20 74 68  |PEGMEM to set th|
00004540  65 20 64 65 66 61 75 6c  74 20 6d 65 6d 6f 72 79  |e default memory|
00004550  20 6c 69 6d 69 74 2e 20  20 54 68 65 20 76 61 6c  | limit.  The val|
00004560  75 65 20 69 73 20 73 70  65 63 69 66 69 65 64 20  |ue is specified |
00004570  61 73 0a 64 65 73 63 72  69 62 65 64 20 66 6f 72  |as.described for|
00004580  20 74 68 65 20 2d 6d 61  78 6d 65 6d 6f 72 79 20  | the -maxmemory |
00004590  73 77 69 74 63 68 2e 20  20 4a 50 45 47 4d 45 4d  |switch.  JPEGMEM|
000045a0  20 6f 76 65 72 72 69 64  65 73 20 74 68 65 20 64  | overrides the d|
000045b0  65 66 61 75 6c 74 20 76  61 6c 75 65 0a 73 70 65  |efault value.spe|
000045c0  63 69 66 69 65 64 20 77  68 65 6e 20 74 68 65 20  |cified when the |
000045d0  70 72 6f 67 72 61 6d 20  77 61 73 20 63 6f 6d 70  |program was comp|
000045e0  69 6c 65 64 2c 20 61 6e  64 20 69 74 73 65 6c 66  |iled, and itself|
000045f0  20 69 73 20 6f 76 65 72  72 69 64 64 65 6e 20 62  | is overridden b|
00004600  79 20 61 6e 0a 65 78 70  6c 69 63 69 74 20 2d 6d  |y an.explicit -m|
00004610  61 78 6d 65 6d 6f 72 79  20 73 77 69 74 63 68 2e  |axmemory switch.|
00004620  0a 0a 4f 6e 20 4d 53 2d  44 4f 53 20 6d 61 63 68  |..On MS-DOS mach|
00004630  69 6e 65 73 2c 20 2d 6d  61 78 6d 65 6d 6f 72 79  |ines, -maxmemory|
00004640  20 69 73 20 74 68 65 20  61 6d 6f 75 6e 74 20 6f  | is the amount o|
00004650  66 20 6d 61 69 6e 20 28  63 6f 6e 76 65 6e 74 69  |f main (conventi|
00004660  6f 6e 61 6c 29 20 6d 65  6d 6f 72 79 20 74 6f 0a  |onal) memory to.|
00004670  75 73 65 2e 20 20 28 45  78 74 65 6e 64 65 64 20  |use.  (Extended |
00004680  6f 72 20 65 78 70 61 6e  64 65 64 20 6d 65 6d 6f  |or expanded memo|
00004690  72 79 20 69 73 20 61 6c  73 6f 20 75 73 65 64 20  |ry is also used |
000046a0  69 66 20 61 76 61 69 6c  61 62 6c 65 2e 29 20 20  |if available.)  |
000046b0  4d 6f 73 74 0a 44 4f 53  2d 73 70 65 63 69 66 69  |Most.DOS-specifi|
000046c0  63 20 76 65 72 73 69 6f  6e 73 20 6f 66 20 74 68  |c versions of th|
000046d0  69 73 20 73 6f 66 74 77  61 72 65 20 64 6f 20 74  |is software do t|
000046e0  68 65 69 72 20 6f 77 6e  20 6d 65 6d 6f 72 79 20  |heir own memory |
000046f0  73 70 61 63 65 20 65 73  74 69 6d 61 74 69 6f 6e  |space estimation|
00004700  0a 61 6e 64 20 64 6f 20  6e 6f 74 20 6e 65 65 64  |.and do not need|
00004710  20 79 6f 75 20 74 6f 20  73 70 65 63 69 66 79 20  | you to specify |
00004720  2d 6d 61 78 6d 65 6d 6f  72 79 2e 0a 0a 0a 4a 50  |-maxmemory....JP|
00004730  45 47 54 52 41 4e 0a 0a  6a 70 65 67 74 72 61 6e  |EGTRAN..jpegtran|
00004740  20 74 72 61 6e 73 6c 61  74 65 73 20 4a 50 45 47  | translates JPEG|
00004750  20 66 69 6c 65 73 20 66  72 6f 6d 20 6f 6e 65 20  | files from one |
00004760  76 61 72 69 61 6e 74 20  6f 66 20 4a 50 45 47 20  |variant of JPEG |
00004770  74 6f 20 61 6e 6f 74 68  65 72 2c 20 66 6f 72 0a  |to another, for.|
00004780  65 78 61 6d 70 6c 65 20  66 72 6f 6d 20 62 61 73  |example from bas|
00004790  65 6c 69 6e 65 20 4a 50  45 47 20 74 6f 20 70 72  |eline JPEG to pr|
000047a0  6f 67 72 65 73 73 69 76  65 20 4a 50 45 47 20 6f  |ogressive JPEG o|
000047b0  72 20 76 69 63 65 20 76  65 72 73 61 2e 20 20 54  |r vice versa.  T|
000047c0  68 65 0a 74 72 61 6e 73  66 6f 72 6d 61 74 69 6f  |he.transformatio|
000047d0  6e 20 69 73 20 6c 6f 73  73 6c 65 73 73 3a 20 6e  |n is lossless: n|
000047e0  6f 20 69 6d 61 67 65 20  64 65 67 72 61 64 61 74  |o image degradat|
000047f0  69 6f 6e 20 6f 63 63 75  72 73 2c 20 77 68 69 63  |ion occurs, whic|
00004800  68 20 77 6f 75 6c 64 20  6e 6f 74 0a 62 65 20 74  |h would not.be t|
00004810  72 75 65 20 69 66 20 79  6f 75 20 75 73 65 64 20  |rue if you used |
00004820  64 6a 70 65 67 20 66 6f  6c 6c 6f 77 65 64 20 62  |djpeg followed b|
00004830  79 20 63 6a 70 65 67 2e  20 20 48 6f 77 65 76 65  |y cjpeg.  Howeve|
00004840  72 2c 20 79 6f 75 20 63  61 6e 6e 6f 74 20 61 6c  |r, you cannot al|
00004850  74 65 72 0a 74 68 65 20  69 6d 61 67 65 20 71 75  |ter.the image qu|
00004860  61 6c 69 74 79 2c 20 62  65 63 61 75 73 65 20 74  |ality, because t|
00004870  68 61 74 20 77 6f 75 6c  64 20 6e 6f 74 20 62 65  |hat would not be|
00004880  20 61 20 6c 6f 73 73 6c  65 73 73 20 6f 70 65 72  | a lossless oper|
00004890  61 74 69 6f 6e 2e 0a 0a  6a 70 65 67 74 72 61 6e  |ation...jpegtran|
000048a0  20 6f 70 65 72 61 74 65  73 20 73 69 6d 69 6c 61  | operates simila|
000048b0  72 6c 79 20 74 6f 20 63  6a 70 65 67 2c 20 65 78  |rly to cjpeg, ex|
000048c0  63 65 70 74 20 74 68 61  74 20 69 74 20 72 65 61  |cept that it rea|
000048d0  64 73 20 61 20 4a 50 45  47 20 66 69 6c 65 0a 61  |ds a JPEG file.a|
000048e0  6e 64 20 77 72 69 74 65  73 20 61 6e 6f 74 68 65  |nd writes anothe|
000048f0  72 20 4a 50 45 47 20 66  69 6c 65 2e 0a 0a 6a 70  |r JPEG file...jp|
00004900  65 67 74 72 61 6e 20 61  63 63 65 70 74 73 20 61  |egtran accepts a|
00004910  20 73 75 62 73 65 74 20  6f 66 20 74 68 65 20 73  | subset of the s|
00004920  77 69 74 63 68 65 73 20  72 65 63 6f 67 6e 69 7a  |witches recogniz|
00004930  65 64 20 62 79 20 63 6a  70 65 67 3a 0a 09 2d 6f  |ed by cjpeg:..-o|
00004940  75 74 66 69 6c 65 20 66  69 6c 65 6e 61 6d 65 0a  |utfile filename.|
00004950  09 2d 6f 70 74 69 6d 69  7a 65 0a 09 2d 70 72 6f  |.-optimize..-pro|
00004960  67 72 65 73 73 69 76 65  0a 09 2d 72 65 73 74 61  |gressive..-resta|
00004970  72 74 20 4e 0a 09 2d 73  63 61 6e 73 20 66 69 6c  |rt N..-scans fil|
00004980  65 0a 09 2d 6d 61 78 6d  65 6d 6f 72 79 20 4e 0a  |e..-maxmemory N.|
00004990  09 2d 76 65 72 62 6f 73  65 0a 09 2d 64 65 62 75  |.-verbose..-debu|
000049a0  67 0a 53 65 65 20 74 68  65 20 70 72 65 76 69 6f  |g.See the previo|
000049b0  75 73 20 64 69 73 63 75  73 73 69 6f 6e 20 6f 66  |us discussion of|
000049c0  20 63 6a 70 65 67 20 66  6f 72 20 64 65 74 61 69  | cjpeg for detai|
000049d0  6c 73 20 61 62 6f 75 74  20 74 68 65 73 65 20 73  |ls about these s|
000049e0  77 69 74 63 68 65 73 2e  0a 0a 49 66 20 79 6f 75  |witches...If you|
000049f0  20 73 70 65 63 69 66 79  20 6e 6f 20 73 77 69 74  | specify no swit|
00004a00  63 68 65 73 2c 20 79 6f  75 20 67 65 74 20 61 20  |ches, you get a |
00004a10  70 6c 61 69 6e 20 62 61  73 65 6c 69 6e 65 2d 4a  |plain baseline-J|
00004a20  50 45 47 20 6f 75 74 70  75 74 20 66 69 6c 65 2e  |PEG output file.|
00004a30  0a 0a 0a 54 48 45 20 43  4f 4d 4d 45 4e 54 20 55  |...THE COMMENT U|
00004a40  54 49 4c 49 54 49 45 53  0a 0a 54 68 65 20 4a 50  |TILITIES..The JP|
00004a50  45 47 20 73 74 61 6e 64  61 72 64 20 61 6c 6c 6f  |EG standard allo|
00004a60  77 73 20 22 63 6f 6d 6d  65 6e 74 22 20 28 43 4f  |ws "comment" (CO|
00004a70  4d 29 20 62 6c 6f 63 6b  73 20 74 6f 20 6f 63 63  |M) blocks to occ|
00004a80  75 72 20 77 69 74 68 69  6e 20 61 20 4a 50 45 47  |ur within a JPEG|
00004a90  20 66 69 6c 65 2e 0a 41  6c 74 68 6f 75 67 68 20  | file..Although |
00004aa0  74 68 65 20 73 74 61 6e  64 61 72 64 20 64 6f 65  |the standard doe|
00004ab0  73 6e 27 74 20 61 63 74  75 61 6c 6c 79 20 64 65  |sn't actually de|
00004ac0  66 69 6e 65 20 77 68 61  74 20 43 4f 4d 20 62 6c  |fine what COM bl|
00004ad0  6f 63 6b 73 20 61 72 65  20 66 6f 72 2c 20 74 68  |ocks are for, th|
00004ae0  65 79 0a 61 72 65 20 77  69 64 65 6c 79 20 75 73  |ey.are widely us|
00004af0  65 64 20 74 6f 20 68 6f  6c 64 20 75 73 65 72 2d  |ed to hold user-|
00004b00  73 75 70 70 6c 69 65 64  20 74 65 78 74 20 73 74  |supplied text st|
00004b10  72 69 6e 67 73 2e 20 20  54 68 69 73 20 6c 65 74  |rings.  This let|
00004b20  73 20 79 6f 75 20 61 64  64 0a 61 6e 6e 6f 74 61  |s you add.annota|
00004b30  74 69 6f 6e 73 2c 20 74  69 74 6c 65 73 2c 20 69  |tions, titles, i|
00004b40  6e 64 65 78 20 74 65 72  6d 73 2c 20 65 74 63 20  |ndex terms, etc |
00004b50  74 6f 20 79 6f 75 72 20  4a 50 45 47 20 66 69 6c  |to your JPEG fil|
00004b60  65 73 2c 20 61 6e 64 20  6c 61 74 65 72 20 72 65  |es, and later re|
00004b70  74 72 69 65 76 65 0a 74  68 65 6d 20 61 73 20 74  |trieve.them as t|
00004b80  65 78 74 2e 20 20 43 4f  4d 20 62 6c 6f 63 6b 73  |ext.  COM blocks|
00004b90  20 64 6f 20 6e 6f 74 20  69 6e 74 65 72 66 65 72  | do not interfer|
00004ba0  65 20 77 69 74 68 20 74  68 65 20 69 6d 61 67 65  |e with the image|
00004bb0  20 73 74 6f 72 65 64 20  69 6e 20 74 68 65 20 4a  | stored in the J|
00004bc0  50 45 47 0a 66 69 6c 65  2e 20 20 54 68 65 20 6d  |PEG.file.  The m|
00004bd0  61 78 69 6d 75 6d 20 73  69 7a 65 20 6f 66 20 61  |aximum size of a|
00004be0  20 43 4f 4d 20 62 6c 6f  63 6b 20 69 73 20 36 34  | COM block is 64|
00004bf0  4b 2c 20 62 75 74 20 79  6f 75 20 63 61 6e 20 68  |K, but you can h|
00004c00  61 76 65 20 61 73 20 6d  61 6e 79 20 6f 66 0a 74  |ave as many of.t|
00004c10  68 65 6d 20 61 73 20 79  6f 75 20 6c 69 6b 65 20  |hem as you like |
00004c20  69 6e 20 6f 6e 65 20 4a  50 45 47 20 66 69 6c 65  |in one JPEG file|
00004c30  2e 0a 0a 57 65 20 70 72  6f 76 69 64 65 20 74 77  |...We provide tw|
00004c40  6f 20 75 74 69 6c 69 74  79 20 70 72 6f 67 72 61  |o utility progra|
00004c50  6d 73 20 74 6f 20 64 69  73 70 6c 61 79 20 43 4f  |ms to display CO|
00004c60  4d 20 62 6c 6f 63 6b 20  63 6f 6e 74 65 6e 74 73  |M block contents|
00004c70  20 61 6e 64 20 61 64 64  20 43 4f 4d 0a 62 6c 6f  | and add COM.blo|
00004c80  63 6b 73 20 74 6f 20 61  20 4a 50 45 47 20 66 69  |cks to a JPEG fi|
00004c90  6c 65 2e 0a 0a 72 64 6a  70 67 63 6f 6d 20 73 65  |le...rdjpgcom se|
00004ca0  61 72 63 68 65 73 20 61  20 4a 50 45 47 20 66 69  |arches a JPEG fi|
00004cb0  6c 65 20 61 6e 64 20 70  72 69 6e 74 73 20 74 68  |le and prints th|
00004cc0  65 20 63 6f 6e 74 65 6e  74 73 20 6f 66 20 61 6e  |e contents of an|
00004cd0  79 20 43 4f 4d 20 62 6c  6f 63 6b 73 20 6f 6e 0a  |y COM blocks on.|
00004ce0  73 74 61 6e 64 61 72 64  20 6f 75 74 70 75 74 2e  |standard output.|
00004cf0  20 20 54 68 65 20 63 6f  6d 6d 61 6e 64 20 6c 69  |  The command li|
00004d00  6e 65 20 73 79 6e 74 61  78 20 69 73 0a 09 72 64  |ne syntax is..rd|
00004d10  6a 70 67 63 6f 6d 20 5b  2d 76 65 72 62 6f 73 65  |jpgcom [-verbose|
00004d20  5d 20 5b 69 6e 70 75 74  66 69 6c 65 6e 61 6d 65  |] [inputfilename|
00004d30  5d 0a 54 68 65 20 73 77  69 74 63 68 20 22 2d 76  |].The switch "-v|
00004d40  65 72 62 6f 73 65 22 20  28 6f 72 20 6a 75 73 74  |erbose" (or just|
00004d50  20 22 2d 76 22 29 20 63  61 75 73 65 73 20 72 64  | "-v") causes rd|
00004d60  6a 70 67 63 6f 6d 20 74  6f 20 61 6c 73 6f 20 64  |jpgcom to also d|
00004d70  69 73 70 6c 61 79 20 74  68 65 20 4a 50 45 47 0a  |isplay the JPEG.|
00004d80  69 6d 61 67 65 20 64 69  6d 65 6e 73 69 6f 6e 73  |image dimensions|
00004d90  2e 20 20 49 66 20 79 6f  75 20 6f 6d 69 74 20 74  |.  If you omit t|
00004da0  68 65 20 69 6e 70 75 74  20 66 69 6c 65 20 6e 61  |he input file na|
00004db0  6d 65 20 66 72 6f 6d 20  74 68 65 20 63 6f 6d 6d  |me from the comm|
00004dc0  61 6e 64 20 6c 69 6e 65  2c 0a 74 68 65 20 4a 50  |and line,.the JP|
00004dd0  45 47 20 66 69 6c 65 20  69 73 20 72 65 61 64 20  |EG file is read |
00004de0  66 72 6f 6d 20 73 74 61  6e 64 61 72 64 20 69 6e  |from standard in|
00004df0  70 75 74 2e 20 20 28 54  68 69 73 20 6d 61 79 20  |put.  (This may |
00004e00  6e 6f 74 20 77 6f 72 6b  20 6f 6e 20 73 6f 6d 65  |not work on some|
00004e10  0a 6f 70 65 72 61 74 69  6e 67 20 73 79 73 74 65  |.operating syste|
00004e20  6d 73 2c 20 69 66 20 62  69 6e 61 72 79 20 64 61  |ms, if binary da|
00004e30  74 61 20 63 61 6e 27 74  20 62 65 20 72 65 61 64  |ta can't be read|
00004e40  20 66 72 6f 6d 20 73 74  64 69 6e 2e 29 0a 0a 77  | from stdin.)..w|
00004e50  72 6a 70 67 63 6f 6d 20  61 64 64 73 20 61 20 43  |rjpgcom adds a C|
00004e60  4f 4d 20 62 6c 6f 63 6b  2c 20 63 6f 6e 74 61 69  |OM block, contai|
00004e70  6e 69 6e 67 20 74 65 78  74 20 79 6f 75 20 70 72  |ning text you pr|
00004e80  6f 76 69 64 65 2c 20 74  6f 20 61 20 4a 50 45 47  |ovide, to a JPEG|
00004e90  20 66 69 6c 65 2e 0a 4f  72 64 69 6e 61 72 69 6c  | file..Ordinaril|
00004ea0  79 2c 20 74 68 65 20 43  4f 4d 20 62 6c 6f 63 6b  |y, the COM block|
00004eb0  20 69 73 20 61 64 64 65  64 20 61 66 74 65 72 20  | is added after |
00004ec0  61 6e 79 20 65 78 69 73  74 69 6e 67 20 43 4f 4d  |any existing COM|
00004ed0  20 62 6c 6f 63 6b 73 2c  20 62 75 74 20 79 6f 75  | blocks, but you|
00004ee0  0a 63 61 6e 20 64 65 6c  65 74 65 20 74 68 65 20  |.can delete the |
00004ef0  6f 6c 64 20 43 4f 4d 20  62 6c 6f 63 6b 73 20 69  |old COM blocks i|
00004f00  66 20 79 6f 75 20 77 69  73 68 2e 20 20 77 72 6a  |f you wish.  wrj|
00004f10  70 67 63 6f 6d 20 70 72  6f 64 75 63 65 73 20 61  |pgcom produces a|
00004f20  20 6e 65 77 20 4a 50 45  47 0a 66 69 6c 65 3b 20  | new JPEG.file; |
00004f30  69 74 20 64 6f 65 73 20  6e 6f 74 20 6d 6f 64 69  |it does not modi|
00004f40  66 79 20 74 68 65 20 69  6e 70 75 74 20 66 69 6c  |fy the input fil|
00004f50  65 2e 20 20 44 4f 20 4e  4f 54 20 74 72 79 20 74  |e.  DO NOT try t|
00004f60  6f 20 6f 76 65 72 77 72  69 74 65 20 74 68 65 20  |o overwrite the |
00004f70  69 6e 70 75 74 0a 66 69  6c 65 20 62 79 20 64 69  |input.file by di|
00004f80  72 65 63 74 69 6e 67 20  77 72 6a 70 67 63 6f 6d  |recting wrjpgcom|
00004f90  27 73 20 6f 75 74 70 75  74 20 62 61 63 6b 20 69  |'s output back i|
00004fa0  6e 74 6f 20 69 74 3b 20  6f 6e 20 6d 6f 73 74 20  |nto it; on most |
00004fb0  73 79 73 74 65 6d 73 20  74 68 69 73 20 77 69 6c  |systems this wil|
00004fc0  6c 0a 6a 75 73 74 20 64  65 73 74 72 6f 79 20 79  |l.just destroy y|
00004fd0  6f 75 72 20 66 69 6c 65  2e 0a 0a 54 68 65 20 63  |our file...The c|
00004fe0  6f 6d 6d 61 6e 64 20 6c  69 6e 65 20 73 79 6e 74  |ommand line synt|
00004ff0  61 78 20 66 6f 72 20 77  72 6a 70 67 63 6f 6d 20  |ax for wrjpgcom |
00005000  69 73 20 73 69 6d 69 6c  61 72 20 74 6f 20 63 6a  |is similar to cj|
00005010  70 65 67 27 73 2e 20 20  4f 6e 20 55 6e 69 78 2d  |peg's.  On Unix-|
00005020  6c 69 6b 65 0a 73 79 73  74 65 6d 73 2c 20 69 74  |like.systems, it|
00005030  20 69 73 0a 09 77 72 6a  70 67 63 6f 6d 20 5b 73  | is..wrjpgcom [s|
00005040  77 69 74 63 68 65 73 5d  20 5b 69 6e 70 75 74 66  |witches] [inputf|
00005050  69 6c 65 6e 61 6d 65 5d  0a 54 68 65 20 6f 75 74  |ilename].The out|
00005060  70 75 74 20 66 69 6c 65  20 69 73 20 77 72 69 74  |put file is writ|
00005070  74 65 6e 20 74 6f 20 73  74 61 6e 64 61 72 64 20  |ten to standard |
00005080  6f 75 74 70 75 74 2e 20  20 54 68 65 20 69 6e 70  |output.  The inp|
00005090  75 74 20 66 69 6c 65 20  63 6f 6d 65 73 20 66 72  |ut file comes fr|
000050a0  6f 6d 0a 74 68 65 20 6e  61 6d 65 64 20 66 69 6c  |om.the named fil|
000050b0  65 2c 20 6f 72 20 66 72  6f 6d 20 73 74 61 6e 64  |e, or from stand|
000050c0  61 72 64 20 69 6e 70 75  74 20 69 66 20 6e 6f 20  |ard input if no |
000050d0  69 6e 70 75 74 20 66 69  6c 65 20 69 73 20 6e 61  |input file is na|
000050e0  6d 65 64 2e 0a 0a 4f 6e  20 6d 6f 73 74 20 6e 6f  |med...On most no|
000050f0  6e 2d 55 6e 69 78 20 73  79 73 74 65 6d 73 2c 20  |n-Unix systems, |
00005100  74 68 65 20 73 79 6e 74  61 78 20 69 73 0a 09 77  |the syntax is..w|
00005110  72 6a 70 67 63 6f 6d 20  5b 73 77 69 74 63 68 65  |rjpgcom [switche|
00005120  73 5d 20 69 6e 70 75 74  66 69 6c 65 6e 61 6d 65  |s] inputfilename|
00005130  20 6f 75 74 70 75 74 66  69 6c 65 6e 61 6d 65 0a  | outputfilename.|
00005140  77 68 65 72 65 20 62 6f  74 68 20 69 6e 70 75 74  |where both input|
00005150  20 61 6e 64 20 6f 75 74  70 75 74 20 66 69 6c 65  | and output file|
00005160  20 6e 61 6d 65 73 20 6d  75 73 74 20 62 65 20 67  | names must be g|
00005170  69 76 65 6e 20 65 78 70  6c 69 63 69 74 6c 79 2e  |iven explicitly.|
00005180  0a 0a 77 72 6a 70 67 63  6f 6d 20 75 6e 64 65 72  |..wrjpgcom under|
00005190  73 74 61 6e 64 73 20 74  68 72 65 65 20 73 77 69  |stands three swi|
000051a0  74 63 68 65 73 3a 0a 09  2d 72 65 70 6c 61 63 65  |tches:..-replace|
000051b0  09 09 20 44 65 6c 65 74  65 20 61 6e 79 20 65 78  |.. Delete any ex|
000051c0  69 73 74 69 6e 67 20 43  4f 4d 20 62 6c 6f 63 6b  |isting COM block|
000051d0  73 20 66 72 6f 6d 20 74  68 65 20 66 69 6c 65 2e  |s from the file.|
000051e0  0a 09 2d 63 6f 6d 6d 65  6e 74 20 22 43 6f 6d 6d  |..-comment "Comm|
000051f0  65 6e 74 20 74 65 78 74  22 09 20 53 75 70 70 6c  |ent text". Suppl|
00005200  79 20 6e 65 77 20 43 4f  4d 20 74 65 78 74 20 6f  |y new COM text o|
00005210  6e 20 63 6f 6d 6d 61 6e  64 20 6c 69 6e 65 2e 0a  |n command line..|
00005220  20 20 20 20 20 20 20 20  2d 63 66 69 6c 65 20 6e  |        -cfile n|
00005230  61 6d 65 09 09 20 52 65  61 64 20 74 65 78 74 20  |ame.. Read text |
00005240  66 6f 72 20 6e 65 77 20  43 4f 4d 20 62 6c 6f 63  |for new COM bloc|
00005250  6b 20 66 72 6f 6d 20 6e  61 6d 65 64 20 66 69 6c  |k from named fil|
00005260  65 2e 0a 28 53 77 69 74  63 68 20 6e 61 6d 65 73  |e..(Switch names|
00005270  20 63 61 6e 20 62 65 20  61 62 62 72 65 76 69 61  | can be abbrevia|
00005280  74 65 64 2e 29 20 20 49  66 20 79 6f 75 20 68 61  |ted.)  If you ha|
00005290  76 65 20 6f 6e 6c 79 20  6f 6e 65 20 6c 69 6e 65  |ve only one line|
000052a0  20 6f 66 20 63 6f 6d 6d  65 6e 74 20 74 65 78 74  | of comment text|
000052b0  0a 74 6f 20 61 64 64 2c  20 79 6f 75 20 63 61 6e  |.to add, you can|
000052c0  20 70 72 6f 76 69 64 65  20 69 74 20 6f 6e 20 74  | provide it on t|
000052d0  68 65 20 63 6f 6d 6d 61  6e 64 20 6c 69 6e 65 20  |he command line |
000052e0  77 69 74 68 20 2d 63 6f  6d 6d 65 6e 74 2e 20 20  |with -comment.  |
000052f0  54 68 65 20 63 6f 6d 6d  65 6e 74 0a 74 65 78 74  |The comment.text|
00005300  20 6d 75 73 74 20 62 65  20 73 75 72 72 6f 75 6e  | must be surroun|
00005310  64 65 64 20 77 69 74 68  20 71 75 6f 74 65 73 20  |ded with quotes |
00005320  73 6f 20 74 68 61 74 20  69 74 20 69 73 20 74 72  |so that it is tr|
00005330  65 61 74 65 64 20 61 73  20 61 20 73 69 6e 67 6c  |eated as a singl|
00005340  65 0a 61 72 67 75 6d 65  6e 74 2e 20 20 4c 6f 6e  |e.argument.  Lon|
00005350  67 65 72 20 63 6f 6d 6d  65 6e 74 73 20 63 61 6e  |ger comments can|
00005360  20 62 65 20 72 65 61 64  20 66 72 6f 6d 20 61 20  | be read from a |
00005370  74 65 78 74 20 66 69 6c  65 2e 0a 0a 49 66 20 79  |text file...If y|
00005380  6f 75 20 67 69 76 65 20  6e 65 69 74 68 65 72 20  |ou give neither |
00005390  2d 63 6f 6d 6d 65 6e 74  20 6e 6f 72 20 2d 63 66  |-comment nor -cf|
000053a0  69 6c 65 2c 20 74 68 65  6e 20 77 72 6a 70 67 63  |ile, then wrjpgc|
000053b0  6f 6d 20 77 69 6c 6c 20  72 65 61 64 20 74 68 65  |om will read the|
000053c0  20 63 6f 6d 6d 65 6e 74  0a 74 65 78 74 20 66 72  | comment.text fr|
000053d0  6f 6d 20 73 74 61 6e 64  61 72 64 20 69 6e 70 75  |om standard inpu|
000053e0  74 2e 20 20 28 49 6e 20  74 68 69 73 20 63 61 73  |t.  (In this cas|
000053f0  65 20 61 6e 20 69 6e 70  75 74 20 69 6d 61 67 65  |e an input image|
00005400  20 66 69 6c 65 20 6e 61  6d 65 20 4d 55 53 54 20  | file name MUST |
00005410  62 65 0a 73 75 70 70 6c  69 65 64 2c 20 73 6f 20  |be.supplied, so |
00005420  74 68 61 74 20 74 68 65  20 73 6f 75 72 63 65 20  |that the source |
00005430  4a 50 45 47 20 66 69 6c  65 20 63 6f 6d 65 73 20  |JPEG file comes |
00005440  66 72 6f 6d 20 73 6f 6d  65 77 68 65 72 65 20 65  |from somewhere e|
00005450  6c 73 65 2e 29 20 20 59  6f 75 20 63 61 6e 0a 65  |lse.)  You can.e|
00005460  6e 74 65 72 20 6d 75 6c  74 69 70 6c 65 20 6c 69  |nter multiple li|
00005470  6e 65 73 2c 20 75 70 20  74 6f 20 36 34 4b 42 20  |nes, up to 64KB |
00005480  77 6f 72 74 68 2e 20 20  54 79 70 65 20 61 6e 20  |worth.  Type an |
00005490  65 6e 64 2d 6f 66 2d 66  69 6c 65 20 69 6e 64 69  |end-of-file indi|
000054a0  63 61 74 6f 72 0a 28 75  73 75 61 6c 6c 79 20 63  |cator.(usually c|
000054b0  6f 6e 74 72 6f 6c 2d 44  20 6f 72 20 63 6f 6e 74  |ontrol-D or cont|
000054c0  72 6f 6c 2d 5a 29 20 74  6f 20 74 65 72 6d 69 6e  |rol-Z) to termin|
000054d0  61 74 65 20 74 68 65 20  63 6f 6d 6d 65 6e 74 20  |ate the comment |
000054e0  74 65 78 74 20 65 6e 74  72 79 2e 0a 0a 77 72 6a  |text entry...wrj|
000054f0  70 67 63 6f 6d 20 77 69  6c 6c 20 6e 6f 74 20 61  |pgcom will not a|
00005500  64 64 20 61 20 43 4f 4d  20 62 6c 6f 63 6b 20 69  |dd a COM block i|
00005510  66 20 74 68 65 20 70 72  6f 76 69 64 65 64 20 63  |f the provided c|
00005520  6f 6d 6d 65 6e 74 20 73  74 72 69 6e 67 20 69 73  |omment string is|
00005530  20 65 6d 70 74 79 2e 0a  54 68 65 72 65 66 6f 72  | empty..Therefor|
00005540  65 20 2d 72 65 70 6c 61  63 65 20 2d 63 6f 6d 6d  |e -replace -comm|
00005550  65 6e 74 20 22 22 20 63  61 6e 20 62 65 20 75 73  |ent "" can be us|
00005560  65 64 20 74 6f 20 64 65  6c 65 74 65 20 61 6c 6c  |ed to delete all|
00005570  20 43 4f 4d 20 62 6c 6f  63 6b 73 20 66 72 6f 6d  | COM blocks from|
00005580  20 61 0a 66 69 6c 65 2e  0a 0a 54 68 65 73 65 20  | a.file...These |
00005590  75 74 69 6c 69 74 79 20  70 72 6f 67 72 61 6d 73  |utility programs|
000055a0  20 64 6f 20 6e 6f 74 20  64 65 70 65 6e 64 20 6f  | do not depend o|
000055b0  6e 20 74 68 65 20 49 4a  47 20 4a 50 45 47 20 6c  |n the IJG JPEG l|
000055c0  69 62 72 61 72 79 2e 20  20 49 6e 0a 70 61 72 74  |ibrary.  In.part|
000055d0  69 63 75 6c 61 72 2c 20  74 68 65 20 73 6f 75 72  |icular, the sour|
000055e0  63 65 20 63 6f 64 65 20  66 6f 72 20 72 64 6a 70  |ce code for rdjp|
000055f0  67 63 6f 6d 20 69 73 20  69 6e 74 65 6e 64 65 64  |gcom is intended|
00005600  20 61 73 20 61 6e 20 69  6c 6c 75 73 74 72 61 74  | as an illustrat|
00005610  69 6f 6e 20 6f 66 0a 74  68 65 20 6d 69 6e 69 6d  |ion of.the minim|
00005620  75 6d 20 61 6d 6f 75 6e  74 20 6f 66 20 63 6f 64  |um amount of cod|
00005630  65 20 72 65 71 75 69 72  65 64 20 74 6f 20 70 61  |e required to pa|
00005640  72 73 65 20 61 20 4a 50  45 47 20 66 69 6c 65 20  |rse a JPEG file |
00005650  68 65 61 64 65 72 20 63  6f 72 72 65 63 74 6c 79  |header correctly|
00005660  2e 0a                                             |..|
00005662