In addition to the options common to all programs based on libnetpbm (most notably -quiet, see Common
Options ), g3topbm recognizes the following command line options:
-reversebits
Tells g3topbm to interpret bits least-significant first, instead of the default most-significant
first. Apparently some fax modems do it one way and others do it the other way. If you get a
whole bunch of "bad code word" messages, try using this option.
-stretch
This option tells g3topbm to stretch the image vertically by duplicating each row. This is for
the low-quality transmission mode.
-width=pixels
This option tells g3topbm that the image is supposed to be pixels pixels wide. If any line in it
is not that size, g3topbm issues a warning or fails, depending on whether you specify -stop_error.
You cannot specify both -width and -paper_size.
This option was new in Netpbm 10.33 (March 2006).
-paper_size={A3,A4,A5,A6,B4}
This option tells g3topbm for what size paper this image is supposed to be formatted. g3topbm
uses the width of the paper the same way as with the -width option. g3topbm does not use the
height of the paper for anything.
You cannot specify both -width and -paper_size.
This option was new in Netpbm 10.33 (March 2006).
-stop_error
This option tells g3topbm to fail when it finds a problem in the input. "Fail" means it
terminates with a nonzero status code with the contents of the output file undefined.
If you don't specify this option, g3topbm does its best to work around input errors and salvage as
much of the image as possible in the output image. It first tries to resynchronize to a later
line by searching for the next End Of Line marker, skipping any lines or partial lines in between.
It saves the beginning of the line in which it encountered the problem. If the input file ends
prematurely, g3topbm produces output containing the lines up to where it encountered the problem.
g3topbm issues warning messages when it continues in spite of input errors.
This option was new in Netpbm 10.24 (August 2004). Before that, g3topbm always failed when it
encountered premature EOF and never failed when it encountered other problems. -correctlong
This option helps with certain corrupted input files. Faxes often are corrupted because of
communication line errors. A particularly annoying corruption causes a line to be much longer
than it is supposed to be. One way that can happen is where an End of Line marker is missing, so
two consecutive lines turn into one.
Without this option, g3topbm faithfully renders the document as coded, so the output PBM image
simply contains that long line. This is an especially problematic corruption because it makes the
entire output image about twice as wide as it is supposed to be. But with -correctlong, g3topbm
truncates that line so the overall effect of the input corruption is that a line is missing rather
than that the image is twice as wide as it is supposed to be.
Specifically, with -correctlong, the program looks at the lengths of all the lines (which would
all be the same length in an uncorrupted G3 image) and considers the line length that occurs the
most to be the intended image width. It truncates every line that is longer than that.
The program warns you when corruption has caused the input image to have lines of more than one
length, whether you specify -correctlong or not.
Note that there is no point to specifying -correctlong if you also specify -stop_error.
This option was new in Netpbm 11.04 (September 2023).
-kludge
Tells g3topbm to ignore the first few lines of the file; sometimes fax files have some junk at the
beginning.