FBSTRETCH()

NAME
fbstretch - stretch a frame buffer image

SYNOPSIS
[ ] [ input image name ] [ input square size ] [ input width ]
    [ input height ] [ ] [ horizontal scale factor ] [ vertical scale factor ]
    [ ] [ output square size ] [ output width ] [ output height ]
    [ [ ] output frame buffer name ]

DESCRIPTION
expands or compresses a frame buffer image, in either or both the horizontal and vertical directions. The image scaling origin (fixed point) is the lower left-hand corner of the display. When expanding (scale factor greater than 1), pixels are simply replicated; when compressing (scale factor less than 1), pixel averaging is performed unless sampling is explicitly requested by the option.

  Options

(``high resolution'')Assumes 1024 by 1024 pixels for default input image size
    instead of 512 by 512. Explicitly specified sizes override the default, and if actual input image size is smaller than requested, the actual size will be used. If not specified, requested output frame buffer size will be the stretched revised input size. If there are margins within the requested output beyond the stretched image, they will be cleared to background; if the stretched image would extend beyond the requested output size, it will be clipped to fit, even if there is room for it in the actual frame buffer. Actual sizes depend on details of specific frame buffers.

*(pf-f input image name
    Inputs the image to be displayed from the specified frame buffer or pix(5) file, instead of modifying the output frame buffer in place. This option may not work if input and output frame buffers are the same device.

*(pf-s input square size
    Specifies input image width and height.

*(pf-w input width
    Specifies input image width.

*(pf-n input height
    Specifies input image height.

(``no averaging'')Specifies that output pixels will be sampled from the input,
    instead of being computed by averaging RGB values.

(``verbose'')Causes actual sizes and scale factors used
    to be printed on the standard error output.

*(pf-x horizontal scale factor
    Scales the image by the specified factor in the horizontal direction; the default is the ratio of requested output to input widths, if specified, otherwise 1.

*(pf-y vertical scale factor
    Scales the image by the specified factor in the vertical direction; the default is the ratio of requested output to input heights, if specified, otherwise 1.

*(pf-S output square size
    Specifies output frame buffer width and height.

*(pf-W output width
    Specifies output frame buffer width.

*(pf-N output height
    Specifies output frame buffer height.

*(pf-F output frame buffer name
    Outputs to the specified frame buffer instead of the one specified by the environment variable (or the default, if is not set). If this is the last option specified, the is optional.

DISCUSSION
Pixel averaging may be meaningless for some images or color maps, in which case sampling should be specified. Images of the Mandelbrot set (see mandel(1)) are a good example of this.

EXAMPLE
The following procedure enlarges an image, obtained from a personal computer via the utility, to fill a 1280-by-1024 frame buffer.
    $ *(pfgif-fb image.gif    # displays the 320x200 PC image
    $ *(pffbstretch -w 320 -n 200 -W 1280 -N 1024

SEE ALSO
gif-fb(1), mandel(1), pixscale(1), libfb(3), pix(5).

DIAGNOSTICS
Error messages are intended to be self-explanatory.

AUTHOR
Douglas A. Gwyn, BRL/VLD-VMB