11 XV
2        An interactive  image  display for the X Window System.  XV is
3    an X11 program that displays images in the GIF, PBM, PGM, PPM, X11
4    bitmap, JPEG, TIFF, Sun  Rastefile, RLE, and PM formats on 1-, 4-,
5    6-, 8-, 16-, 24-, and  32-bit  X  displays.    xv  will  also read
6    compress-ed versions of these files.
7
8    NOTE:  This   man  page  is  merely  the  text  portion  of    the
9    (PostScript)  XV  docs,  without  the  figures,  and  without  the
10    appendicies.   As such, it is highly recommended that you get your
11    hands on the *real* documentation.
12
13    ALSO NOTE:  This file documents XV 2.21, *not* XV 3.00.
14
15        Execution Format:
16            xv [options] [filename [filename ...]]
17
18
192 OVERVIEW
20        XV lets you do a large number of things (many of them actually
21    useful), including, but not limited to, the following:
22
23        o display an image in a window on the screen
24        o display an image on the root window, in a variety of styles
25        o grab any rectangular portion of the screen and turn it into
26          an image
27        o arbitrarily stretch or compress the image
28        o rotate the image in 90--degree steps
29        o flip the image around the horizontal or vertical axes
30        o crop a rectangular portion of the image
31        o magnify any portion of  the  image  by any amount, up to the
32          size of the screen
33        o determine pixel values and x,y coordinates in the image
34        o adjust image brightness and contrast with a gamma correction
35          function
36        o apply different gamma functions  to the Red, Green, and Blue
37          color components, to correct for non-linear color response
38        o adjust global image saturation
39        o perform global hue remapping
40        o edit an image's colormap
41        o reduce the number of colors in an image
42        o dither in color and b&w
43        o smooth an image
44        o crop off solid borders automatically
45        o convert image formats
46        o generate Encapsulated PostScript
47
48        Unfortunately the Automatic Checkbook  Balancing  Module still
49    isn't  completely  debugged,  and  is    not    included  in  this
50    distribution.
51
522 Starting_XV
53        NOTE: Unless  explicitly  stated  otherwise, the term  "click"
54    means "click with the Left mouse button."
55
56        Start the program up by typing 'xv'.    After a short delay, a
57    window will appear with the default image (the  XV  logo,  credits
58    and revision date) displayed in it.  If you change the size of the
59    window  (using  whatever method your window manager provides), the
60    image will be automatically stretched to fit the window.
61
622 Options
63        XV supports  literally  dozens of command line options and X11
64    resources.  Fortunately,  it  is doubtful that you'll ever need to
65    use more than a  small few.  The rest are provided mainly for that
66    'one special case' application of XV ...
67
68        If you start XV with  the command 'xv -help', the current list
69    of options will be displayed:
70
71       xv [-] [-2xlimit]  [-aspect  w:h] [-best24] [-bg color] [-black
72          color] [-browse] [-bw width]  [-cecmap]  [-cegeometry  geom]
73          [-cemap] [-cgeometry geom] [-clear] [-cmap]  [-cursor char#]
74          [-DEBUG level] [-display disp] [-dither] [-expand  exp] [-fg
75          color] [-fixed] [-geometry geom] [-help] [-hi color]  [-hsv]
76          [-igeometry  geom]    [-imap]    [-keeparound]  [-lo  color]
77          [-loadclear] [-max] [-maxpect] [-mono] [-ncols #] [-nglobal]
78          [-ninstall] [-nolimits] [-nopos] [-noqcheck]  [-noresetroot]
79          [-nostat]  [-owncmap]  [-perfect]  [-quick24] [-quit]  [-rbg
80          color] [-rfg color] [-rgb] [-rmode #]  [-root]  [-rv]  [-rw]
81          [-slow24]  [-smooth]  [-visual type] [-wait seconds] [-white
82          color] [-wloop] [filename ...]
83
843 General_Options
85       -help
86        Print  usage  instructions,   listing  the  current  available
87        command-line options.  Any unrecognized option will do this as
88        well.
89
90        -display  disp
91        Specifies the display that XV  should  attempt  to connect to.
92        If you don't specify a display,  XV  will  use the environment
93        variable $DISPLAY.
94
95        -fg  color (Resource name: foreground  string)
96        Sets the foreground color used by the windows.
97
98        -bg  color   (Resource name: background  string)
99        Sets the background color used by the windows.
100
101        -hi  color  (Resource name: highlight  string)
102        Sets the highlight color used for the  top-left  edges  of the
103        control buttons.
104
105        -lo  color (Resource name: lowlight  string)
106        Sets the lowlight color used for the bottom-right edges of the
107        control buttons, and also the background of some windows.
108
109        -bw  bwidth (Resource name: borderWidth  integer)
110        Sets  the  width of the border on the windows.    Your  window
111        manager may choose to ignore this, however.
112
1133 Image_Sizing_Options
114        -geometry geom (Resource name: geometry string)
115        Lets you specify the size and placement of the 'image' window.
116        It's most useful when you only specify a  position, and let XV
117        choose  the  size.  If you specify a size  as  well,  XV  will
118        create a window of that size, unless -fixed is specified.  The
119        geom  argument  is  in the form of a normal X geometry  string
120        (e.g.  ``300x240'' or ``+10+10'' or ``400x300+10+10'').
121
122        -fixed  (Resource name: fixed  boolean)
123        Only used  in  conjunction  with the -geometry option.  If you
124        specify a window  size  with  the  -geometry  option,  XV will
125        normally stretch the picture  to  exactly  that size.  This is
126        not always desirable, as it  may  seriously distort the aspect
127        ratio of the picture.  Specifying  the  -fixed option corrects
128        this behavior by instructing XV to use  the specified geometry
129        size as a maximum window size.  It will, however, preserve the
130        original aspect ratio of the picture.
131
132        For example, if you give a rectangular geometry of  '320x240',
133        and  you  try  to  display  a  square picture with a  size  of
134        '256x256', the window opened will actually be '240x240', which
135        is  the largest  square  that  still  fits  in  the  '320x240'
136        rectangle that was specified.
137
138        -expand  exp  (Resource name: expand  floating-point)
139        Lets you specify an  initial  expansion  or compression factor
140        for  the  picture.  You  can  specify  floating-point  values.
141        Values larger than zero multiply the  picture's  dimensions by
142        the given factor.  ( i.e., an expand factor of '3' will make a
143        320x200 image display as 960x600).
144
145        Factors less than zero are treated as reciprocals.  (i.e.,  an
146        expand factor of  '-4'  makes  the  picture  1/4th  its normal
147        size.).  '0' is not a valid expansion factor.
148
149        -aspect  w:h  (Resource name: aspect  string)
150        Lets you set an initial aspect ratio, and also sets  the value
151        used by the Aspect control.  The aspect ratio of nearly  every
152        X display  (and,  in  fact, any civilized graphics display) is
153        1:1.  What this means is that pixels appear to be 'square'.  A
154        100 pixel wide by 100 pixel high box will appear on the screen
155        as a square.  Unfortunately,  this  is  not the case with some
156        screens and digitizers.  The -aspect  option  lets you stretch
157        the  picture  so that the picture appears  correctly  on  your
158        display.    Unlike  the  other size-related options, this  one
159        doesn't  care  what the size of the overall picture  is.    It
160        operates on  a  pixel-by-pixel  basis,  stretching  each image
161        pixel slightly, in  either  width  or height, depending on the
162        ratio.
163
164        Aspect  ratios  greater  than  '1:1'  (e.g.,  '4:3')  make the
165        picture  wider  than  normal.    Aspect ratios less than '1:1'
166        (e.g.   '2:3')  make  the picture taller than normal.  (Useful
167        aspect ratio:   A  512x480  image  that was supposed to fill a
168        standard 4x3 video screen  (produced by many video digitizers)
169        should be displayed with an aspect ratio of '5:4')
170
1713 Color_Allocation_Options
172        -ncols nc  (Resource name: ncols  integer)
173        Sets the maximum number of colors that XV will use.  Normally,
174        this is set to 'as many  as it can get'.  However, you can set
175        this to smaller values for interesting effect.   Most notably,
176        if you set it to '0', it will display the picture by dithering
177        with 'black' and 'white'.  (The actual colors used  can be set
178        by the -black and -white options, below.)
179
180        -nglobal (Resource name: nglobal  boolean)
181        Adjusts the way the program behaves when it is unable  to  get
182        all  the  colors  it  requested.  Normally, it will search the
183        display's default  colormap,  and 'borrow' any colors it deems
184        appropriate.  These borrowed colors are, however, not owned by
185        XV, and as such,  can  changed  without  xv's  permission,  or
186        knowledge.    If  this happens,  the  displayed  picture  will
187        change, in a less-than-desirable direction.   If  you  specify
188        the -nglobal option, XV will not use 'global' colors.  It will
189        only use colors that it successfully allocated, which makes it
190        immune to any color changes.
191
192        It should  be  noted  that  'use global colors' is the default
193        because color changes  aren't  generally  a problem if you are
194        only using XV to  display  a  picture for a short time.  Color
195        changes only really become a  problem if you use XV to display
196        a picture that you will be  keeping  around for a while, while
197        you go and do some other work  (such  as using XV to display a
198        background).  In such cases you will want to specify -nglobal.
199        Note:  using the -ncols or -root options automatically turn on
200        -nglobal.
201
202        -rw  (Resource name: rwColor  boolean)
203        Tells  XV  to  use  read/write  color  cells.    Normally,  XV
204        allocates  colors read-only, which allows it to  share  colors
205        with other programs.  If you use read/write  color  cells,  no
206        other  program  can  use  the  colors  that XV is  using,  and
207        vice-versa.    The only reason you'd do such a thing  is  that
208        using  read/write color cells allows the Apply function in the
209        xv color editor window to operate much faster.
210
211        -perfect  (Resource name: perfect  boolean)
212        Makes XV  try 'extra hard' to get all the colors it wants.  In
213        particular, when -perfect  is  specified, XV will allocate and
214        install its own colormap  if  (and  only  if) it was unable to
215        allocate all the desired colors.    This option is not allowed
216        in conjunction with the -root option.
217
218        -owncmap  (Resource name: ownCmap  boolean)
219        Like '-perfect', only this option forces XV to always allocate
220        and  install  its  own colormap, thereby leaving  the  default
221        colormap untouched.
222
223        -cecmap (Resource name: ceditColorMap boolean)
224        Specifies whether xv installs the  image's  colormap in the xv
225        color editor window, as well as  in  the  image's  window.  By
226        default, the program does install the colormap  in  the  color
227        editor  window,  however this can occasionally make the  color
228        editor  window unreadable.  (This option only apples when  the
229        '-perfect' or '-owncmap' options create their own colormaps.)
230
231        -ninstall  (Resource name: ninstall  boolean)
232        Prevents  XV  from  'installing'  its  own colormap, when  the
233        -perfect  or  -owncmap  options  are  in  effect.  Instead  of
234        installing  the  colormap,  it  will  merely  'ask  the window
235        manager, nicely'  to take care of it.  This is the correct way
236        to  install  a    colormap  (i.e.,  ask  the  WM  to  do  it),
237        unfortunately, it doesn't actually seem to work in many window
238        managers,  so  the  default  behavior  is  for  XV  to  handle
239        installation itself.  However, this has been seen to annoy one
240        window manager (dxwm), so this option is  provided  if your WM
241        doesn't like programs installing their own colormaps.
242
2433 24-bit_Conversion_Options
244        The following options only come  into play if you are using XV
245    to display 24-bit RGB data (PPM files, color PM files, JPEG files,
246    and the output of bggen).  They  have  no effect whatsoever on how
247    GIF pictures or 8-bit greyscale images are displayed.
248
249        -quick24 (Resource name: quick24 boolean)
250        Forces  xv  to  use  the  'quick'  24-bit  to 8-bit conversion
251        algorithm.   This  algorithm dithers the picture using a fixed
252        set of colors  that  span  the  entire  RGB  colorspace.    In
253        versions of xv prior  to 2.10, this was the default algorithm.
254        It no longer is.
255
256        -slow24  (Resource name: slow24  boolean)
257        Specifies that the 'slow' 24-bit to 8-bit conversion algorithm
258        is to be used  by  the program.  This algorithm uses a version
259        of Heckbert's median cut algorithm  to  pick the 'best' colors
260        on a per-image basis, and dithers  with  those.    This is the
261        current default conversion algorithm.
262
263        Advantages:    The  -slow24  algorithm  often produces  better
264        looking pictures than the -quick24 algorithm.
265
266        Disadvantages:  The -slow24 algorithm is about half  the speed
267        of the -quick24 algorithm.  Also, since the colors  are chosen
268        on  a  per-image  basis, it can't be used to display  multiple
269        images simultaneously, as  each  image  will  almost certainly
270        want a different set  of  256 colors.  The -quick24 algorithm,
271        however, uses the same exact  colors for all images, so it can
272        display  many  images simultaneously, without running  out  of
273        colors.
274
275        -best24  (Resource name: best24 boolean)
276        Forces xv to use  the  same  algorithm  used  in  the  program
277        ppmquant, written by Jef Poskanzer.   This algorithm also uses
278        a version of Heckbert's median cut  algorithm,  but is capable
279        of picking 'better' colors than the -slow24  algorithm, and it
280        doesn't dither.
281
282        Advantages:   Generally  produces  slightly better images than
283        the -slow24 algorithm.    Also,  the images are undithered, so
284        they look better when expanded.
285
286        Disadvantages:  Much slower than the -slow24 algorithm.  Like,
287        5 to 10 times slower.  The images  produced  aren't  that much
288        better than those produced by the -slow24 algorithm.
289
290        -noqcheck  (Resource name: noqcheck  boolean)
291        Turns off a 'quick check'  that  is  normally made.  Normally,
292        before  running  either  of  the 24-bit  to  8-bit  conversion
293        algorithms, XV  determines whether the picture to be displayed
294        has more than  256  unique  colors  in  it.    If  the picture
295        doesn't, it will treat  the  picture  as  an 8-bit colormapped
296        image (i.e., GIF), and won't  run  either  of  the  conversion
297        algorithms.
298
299        Advantages:    The  pictures  will  be displayed  'perfectly',
300        whereas  if  they  went  through  either  of  the   conversion
301        algorithms, they'd be dithered.
302
303        Disadvantages:  Often uses a lot of colors, which  limits  the
304        ability  to  view  multiple images at once.  (See the  -slow24
305        option above for further info about color sharing.)
306
3073 Root_Window_Options
308        XV has the ability to display images on  the root window of an
309    X  display,  rather  than  opening  its  own  window (the  default
310    behavior).    When using the root window, the program is  somewhat
311    limited, because  the  program  cannot  receive  input events (key
312    press and mouse  clicks)  from  the root window.  As a result, you
313    cannot track pixel values,  or  crop,  nor  can  you  use keyboard
314    commands while the mouse is in the root window.
315
316        -root  (Resource name:  <none>)
317        Directs  XV  to  display images in the root window, instead of
318        opening its  own  window.    Exactly  how  the  images will be
319        displayed in the  root  window is determined by the setting of
320        the -rmode option.
321
322        -rmode  mode  (Resource name: rootMode  integer)
323        Determines how images are  to be displayed on the root window,
324        when -root has been specified.   You can find the current list
325        of 'modes' by using a mode  value  of '-1'.  XV will complain,
326        and show a list of valid modes.    The  current list at of the
327        time of this writing is:
328
329            0:      tiling
330            1:      integer tiling
331            2:      mirrored tiling
332            3:      integer mirrored tiling
333            4:      centered tiling
334            5:      centered on a solid background
335            6:      centered on a 'warp' background
336            7:      centered on a 'brick' background
337
338        The  default mode is '0'.  See ``Section  3.5:    The  Display
339        Modes Menu'' for a description of the different display modes.
340
341        -noresetroot (Resource name: resetroot)
342        Normally, when changing from root to window display  mode, the
343        root  is  set  to  the standard X crosshatch pattern.    Using
344        -noresetroot or setting resetroot to false will force the root
345        to remain.    This  is useful when comparing between different
346        tiled images.
347
348        -rfg  color  (Resource name: rootForeground  string)
349        Sets the 'foreground' color used in some of the  root  display
350        modes.
351
352        -rbg  color  (Resource name: rootBackground  string)
353        Sets  the 'background' color used in some of the root  display
354        modes.
355
356        -max  (Resource name: <none>)
357        Makes  XV  automatically stretch the image to the full size of
358        the screen.  This is mostly useful when you want XV to display
359        a background.   While  you  could  just  as  well  specify the
360        dimensions of your display ('-geom 1152x900' for example), the
361        -max option is display-independent.  If you suddenly decide to
362        start working on a 1280x1024 display  (ferinstance)  the  same
363        command will still work.  Note:   If you specify -max when you
364        aren't using -root, the behavior is slightly different.    The
365        image will be made as large as possible while still preserving
366        the normal aspect ratio.
367
368        -maxpect  (Resource name: <none>)
369        Makes  the  image  as  large  as possible while preserving the
370        aspect ratio.
371
372        -quit  (Resource name: <none>)
373        Makes  XV display the (first) specified file and exit, without
374        any user  intervention.    Since  images displayed on the root
375        window remain there  until  explicitly  cleared,  this is very
376        useful for having XV  display  background  images  on the root
377        window in some sort of start-up script.  Needless to say, this
378        is only useful if you are using -root.
379
380        -clear  (Resource name: <none>)
381        Clears the root window of any extraneous XV images.  Note:  it
382        is  not  necessary  to  do an 'xv  -clear'  before  displaying
383        another  picture  in  the root window.  XV  will  detect  that
384        there's  an  old  image  in the root window and  automatically
385        clear it out (and free the associated colors).
386
3873 Window_Options
388        XV currently  consists  of three main windows, plus one window
389    for the actual  image.    These  three  windows  (the  xv controls
390    window, the xv info window, and the xv color editor window) may be
391    automatically mapped and positioned when the program starts.
392
393        -cmap  (Resource name: ctrlMap  boolean)
394        Maps the xv controls window.
395
396        -cgeom  geom  (Resource name: ctrlGeometry  string)
397        Sets  the  initial geometry of the xv controls window.   Note:
398        only the position information is used.  The window is of fixed
399        size.
400
401        -imap  (Resource name: infoMap  boolean)
402        Maps the xv info window.
403
404        -igeom  geom  (Resource name: infoGeomet  string)
405        Sets  the initial geometry of the xv info window.  Note:  only
406        the position  information  is  used.    The window is of fixed
407        size.
408
409        -cemap  (Resource name: ceditMap  boolean)
410        Maps the xv color editor window.
411
412        -cegeom  geom  (Resource name: ceditGeometry  string)
413        Sets the initial  geometry  of  the  xv  color  editor window.
414        Note:  only the  position  information is used.  The window is
415        of fixed size.
416
417        -nopos  (Resource name: nopos  boolean)
418        Turns off the 'default' positioning of the various XV windows.
419        Every time you open a window,  you  will  be asked to position
420        it.  (Assuming your window manager asks you such things.  mwm,
421        for instance doesn't seem to ask.)
422
4233 Miscellaneous_Options
424        -mono  (Resource name: mono  boolean)
425        Forces the image to be displayed as a greyscale.  This is most
426        useful when you are using certain greyscale X displays.  While
427        XV  attempts  to  determine  if  it's  running  on a greyscale
428        display,  many  X  displays  lie,  and claim to be able to  do
429        color.  (This is often because they have color graphics boards
430        hooked up to  b/w  monitors.   The computer, of course, has no
431        way of knowing what  type  of  monitor  is attached.) On these
432        displays, if you don't specify  -mono,  what you will see is a
433        greyscale  representation of one of the  RGB  outputs  of  the
434        system.   (For example, you'll see the  'red'  output  on  our
435        greyscale Sun 3/60s.) The -mono option corrects this behavior.
436
437        -white  color  (Resource name: white  string)
438        Specifies  the  'white'  color  used when the picture  is  b/w
439        stippled.  (When '-ncols 0' has been specified.)
440
441        -black  color  (Resource name: black  string)
442        Specifies  the  'black'  color  used  when the picture is  b/w
443        stippled.  (When '-ncols 0' has been specified.)
444
445        Try  something  like:    'xv  -ncols  0  -bl  red  -wh  yellow
446        <filename>' for  some interesting, late-'60s-style psychodelia
447        effects.
448
449        -wait  secs  (Resource name: <none>)
450        Turns on a  'slide-show'  feature.    Normally, if you specify
451        multiple input files, XV  will display the first one, and wait
452        for you to give the  Next  command  (or  whatever).  The -wait
453        option makes XV wait the specified number of seconds, and then
454        go on to the next picture, without any user intervention.  The
455        program  still  accepts commands, so it's possible to  'abort'
456        the current picture without waiting the full specified time by
457        using the Next command.
458
459        -wloop  (Resource name: <none>)
460        Normally,  when running a slide-show with the -wait option, XV
461        will  terminate  after displaying the last image.  If you also
462        specify the  -wloop  option, the program will loop back to the
463        first image and  continue the slide-show until the user issues
464        the Quit command.
465
466        -rgb  (Resource name: hsvMode boolean)
467        Specifies that, by default,  the colormap editing dials in the
468        xv color editor window should  be  in  RGB  mode.  This is the
469        normal default behavior.
470
471        -hsv  (Resource name: hsvMode  boolean)
472        Specifies that, by default, the colormap  editing dials in the
473        xv color editor window should be in HSV mode.
474
475        -dither  (Resouce name: autoDither  boolean)
476        When  specified,  tells  XV  to automatically issue  a  Dither
477        command  whenever  an  image  is first displayed.   Useful  on
478        displays  with  limited  color  capabilities  (4-bit and 6-bit
479        displays.)
480
481        -smooth  (Resource name:  autoSmooth  boolean)
482        When specified,  tells  XV  to  automatically  issue  a Smooth
483        command whenever an  image is first displayed.  This is useful
484        when you are using  one  of  the image sizing options (such as
485        '-expand' or '-max').
486
487        -crop  (Resource name: autoCrop boolean)
488        When specified, tells  xv  to  automatically issue an AutoCrop
489        command whenever an image is first displayed.
490
491        -visual  vistype  (Resource name: visual  string)
492        Normally, XV uses the default  visual model provided by your X
493        server.    You can override this  by  explicitly  selecting  a
494        visual  to  use.    Valid types are  StaticGray,  StaticColor,
495        TrueColor,  GrayScale,  PseudoColor, and DirectColor.  Not all
496        of these are necessarily provided on any given X display.  Run
497        xdpyinfo on your  display  to  find  out what visual types are
498        supported.
499
500        -cursor  curs  (Resource name: cursor  integer)
501        Specifies an alternate cursor  to  use  in  the  image  window
502        (instead  of the normal 'cross'  cursor).    curs  values  are
503        obtained by finding the character number  of a cursor you like
504        in the 'cursor' font.  (Run 'xfd  -fn  cursor'  to display the
505        cursor font.) For example, a curs value of '56' corresponds to
506        the (singularly useless) 'Gumby' cursor.
507
508        -keeparound  (Resource name: keepAround  boolean)
509        By  default  if you Delete the last file in  the  XV  controls
510        list,  the  program will automatically exit, as a convenience.
511        If you find this an inconvenience.
512
513        -2xlimit  (Resource name: 2xlimit  boolean)
514        By default,  XV  prevents  the  image window from ever getting
515        larger than the  screen.    Unfortunately, because of this, if
516        you load an image  that  is larger than your screen, the image
517        will be shrunk until it  fits on your screen.  Some folks find
518        this  undesirable  behavior.  Specifying the  -2xlimit  option
519        doubles the size limitations.  The image  window  will be kept
520        from  getting  larger  than 2x the width and  height  of  your
521        screen.
522
523        Just    in    case  you're  wondering  why  there's  any  size
524        limitations:  it's fairly easy to accidentally ask for a  huge
525        image  to  be generated.  Simply crop a section of the  image,
526        zoom  so  you  can  see the individual pixels, and uncrop.  If
527        there were  no  size  limitations,  the  (expanded many times)
528        image could be  huge,  and  might crash your X server.  At the
529        very least, it would  take  a  long period of time, and freeze
530        your  X  server during part  of  it.    Generally  undesirable
531        behavior.
532
533        -nolimits (Resource name: nolimites boolean)
534        For  the  truly  daring, this turns off all limitations on the
535        maximum size  of  an  image  window.   (Well, there's still an
536        X-imposed  maximum  size  of  64k  by  64k,  but  that  really
537        shouldn't be a problem.)  Warning:   as mentioned above, it is
538        fairly easy to accidentally generate  a huge image when you do
539        an UnCrop command, and you may  well  crash xv, your X server,
540        the host machine, or all three.  Use At Your Own Risk!!!
541
542        -rv  (Resource name: reverse)
543        Makes  xv display a 'negative' of the  loaded  image.    White
544        becomes  black,  and black becomes white.  Color  images  will
545        have    'interesting'  effects,  as  the  RGB  components  are
546        individually reversed.  For example, red (255,0,0) will become
547        cyan (0,255,255), yellow will become blue, and so on.
548
549        -DEBUG  level   (Resource name: <none>)
550        Turns on some debugging information.  You shouldn't need this.
551        If everything worked perfectly, I wouldn't need  this  either.
552        Specifying '-' all by itself tells XV to  take  its input from
553        stdin, rather then from a file.  This lets  you  put XV on the
554        end of a Un*x pipe.
555
5562 Limitations
557        XV will NOT work on displays that aren't 1-, 4-, 6-,  8-,  16-
558    24-, or  32-bits  deep.    Luckily, that should still cover nearly
559    every display out  there.  It may not work on certain 6- or 24-bit
560    displays.
561
562        It also only displays  the  first image in GIF files that have
563    multiple images in them.
564
565        As for PM pictures, this  program  only displays 1-plane PM_I
566    pictures, or 1-, 3-, or 4-plane PM_C pictures.
567
5682 Authors
569        John Bradley  -  bradley@cis.upenn.edu
570
571        GIF reading code  based  on gif2ras.c, by Patrick J.  Naughton
572    (naughton@wind.sun.com)
573
574        GIF writing code essentially  unchanged  from  code written by
575    Michael Maudlin (mlm@cs.cmu.edu).
576
577        SUN Rasterfile i/o code written by Dave Heath (heath@cs.jhu.edu)
578
579        JPEG interface code written by Markus Baur
580        (s_baur@iravcl.ira.uka.de)
581
582        JPEG i/o code provided by the Independent JPEG Group.
583
584        VMS port by David Jones (jonesd@kcgl1.eng.ohio-state.edu),
585        and Rick Dyson (Dyson@IowaSP.Physics.UIowa.EDU).
586
5871 BGGEN
588        Generates colored backgrounds on X11 displays.    BGGEN  is  a
589    program  that  generates  a width-pixel wide by  size-pixels  high
590    vertical stripe.  The top of the stripe  is  in  color (r1,g1,b1),
591    and the bottom of the stripe is in color (rn,gn,bn).  Intermediate
592    colors are interpolated between these colors.  If you specify more
593    than 2 colors, the stripe passes through all the specified colors,
594    in the order specified.
595
596        The '-b'  option  specifies  the number of significant bits in
597    the (output) color specifications.  It must range between 1 and 8,
598    inclusive.  Use values  less  than  8 (the default) to limit color
599    use by increasing the color granularity.
600
601        Values for 'r', 'g', and  'b'  should range between 0 and 255,
602    inclusive.  0 means 'off', and 255 means 'fully on'.
603
604        BGGEN doesn't actually affect your background directly.  BGGEN
605    merely  generates  a small PPM (Portable Pixmap  Format)  datafile
606    that XV can read and display.
607
608        To use BGGEN , you should pipe its  output into an XV command,
609    such as:  "xv -root -quit -slow24"
610
611        The default 'size' is 1024 pixels, which should be  as tall as
612    your  display.   If your display is taller than that,  you  should
613    specify  its  actual  height,  otherwise  you  will  get a bizarre
614    repeating effect,  that  you  probably didn't want.  Note:  If you
615    specify small values of '-s', you can get some neat effects.
616
617        The '-w' argument has been added to improve the performance of
618    various stippling algorithms (as in XV).  More information to work
619    with, and such.  Try  using  '-w 16' on these command lines to see
620    what is meant.
621
622    Execution format:
623        BGGEN [-w width] [-s size] [-b bits]
624              r1 g1 b1 [r2 g2 b2 ... rn gn bn]
625
6262 Examples
627
628    Light Blue to Dark Blue:
629        BGGEN 100 100 255  50 50 150  | xv -ro -q -sl "-"
630    RGB Rainbow:
631        BGGEN 0 0 255  0 255 0  255 0 0 | xv -ro -q -sl "-"
632    Green Cylinders:
633        BGGEN 0 0 0  0 255 0  0 0 0 -s 128 | xv -ro -q -sl "-"
634    Blue to Magenta:
635        BGGEN 0 0 255  200 0 100 | xv -ro -q -sl "-"
636    Full Rainbow:
637        BGGEN 0 0 255  0 255 255  0 255 0  255 255 0  255 0 0
638            | xv -ro -q -sl "-"
639    Repeating Rainbow:
640        BGGEN 0 0 255 0 255 255 0 255 0 255 255 0 255 0 0
641              255 0 255 0 0 255 -s 256 | xv -ro -q -sl "-"
642
6432 Bugs
644        It'd probably be nice if the  program  used  some  X  calls to
645    determine screen size.  It'd also probably  be nice if the program
646    could take colors by 'name', and also by hexadecimal value.
647
6482 Author
649        John Bradley  -  bradley@cis.upenn.edu
650