|offset||The byte offset in the file at which data should be extracted and compared to a matching string or value.|
|datatype||The type of data value to extract at the specified offset for comparison purposes; one of: byte (8 bit unsigned number), short (16 bit unsigned number), long (32 bit unsigned number), string (an array of bytes), istring (a case-insensitive array of bytes), or ascii (an array of ASCII-only bytes).|
The value and operation to use in matching; the value used is
based on the datatype field.
If value is x, then
it is interpreted to mean
match anything; otherwise the
following operators are supported (where
data is the value extracted from the file and
value is specified in the match field) except for types string, istring, and ascii:
For string, istring, and ascii no operator is allowed; the implicit operation is always =. In these cases, the field is terminated by a tab or end of line, not by #. Characters in the field have their literal value; there are no C-style character escapes.
|result||One of ps, tiff, or error (case insensitive). The first two results specify whether the rule generates a POSTSCRIPT file or a TIFF/F file (Group 3-encoded bilevel data), respectively. The error result indicates that a file is unsuitable for transmission and, if supplied for transmission, should cause the job to be aborted with the command field used in an error message.|
A command description that is expanded and
passed to the shell to convert the input file
to the result format (suitable for sending as facsimile).
Before the string is passed to the shell, it is scanned
and the following % escape codes are substituted for:
See below for example uses of these codes.
The following rules are used to match the formats that are handled directly by the server:
#offset datatype match result command 0 string %! ps # POSTSCRIPT 0 string %PDF ps # POSTSCRIPT by Ghostscript 0 short 0x4d4d tiff # big-endian TIFF 0 short 0x4949 tiff # little-endian TIFF
These rules are used to process the ASCII version of IRIS Inventor database files while blocking the transmission of the binary format variant:
#offset datatype match result command 0 string #Inventor V error IRIS Inventor file >15 string binary error binary IRIS Inventor file >15 string ascii ps %F/textfmt -fCourier-Bold -p11bp\ -U -q >%o <%i
This rule is typically the last entry in the file and is used to convert all unmatched ASCII data files to POSTSCRIPT:
#offset datatype match result command 0 ascii x ps %F/textfmt -fCourier-Bold -p11bp -U -q >%o <%i
It is much better to convert data that is to be transmitted to POSTSCRIPT because this data format permits the facsimile server to do the final imaging according to the optimal transfer parameters (resolution, binary encoding, etc.).
It might be better to allow secondary rules to augment a primary rule rather than just replace them. This would allow, for example, command line options to be selected based on file type.
|-->||TYPERULES (5F)||May 12, 1993|