PAGE(1)                                                   PAGE(1)

     NAME
          page - view FAX, image, graphic, PostScript, PDF, and
          typesetter output files

     SYNOPSIS
          page [ -abirPRvVw ] [ -p ppi ] [ file... ]

     DESCRIPTION
          Page is a general purpose document viewer.  It can be used
          to display the individual pages of a PostScript, PDF, or
          tex(1) or troff(1) device independent output file.  Tex or
          troff output is simply converted to PostScript in order to
          be viewed.  It can also be used to view any number of graph-
          ics files (such as a FAX page, a Plan 9 image(6) file, an
          Inferno bitmap file, or other common format).  Page displays
          these in sequence.  In the absence of named files, page
          reads one from standard input.

          By default, page runs in the window in which it is started
          and leaves the window unchanged.  The -R option causes page
          to grow the window if necessary to display the page being
          viewed.  The -w option causes page to create a new window
          for itself.  The newly created window will grow as under the
          -R option.  If being used to display multipage documents,
          only one file may be specified on the command line.

          The -p option sets the resolution for PostScript and PDF
          files, in pixels per inch.  The default is 100 ppi.  The -r
          option reverses the order in which pages are displayed.

          When viewing a document, page will try to guess the true
          bounding box, usually rounding up from the file's bounding
          box to 8½×11 or A4 size.  The -b option causes it to respect
          the bounding box given in the file.  As a more general prob-
          lem, some PostScript files claim to conform to Adobe's Docu-
          ment Structuring Conventions but do not.  The -P option
          enables a slightly slower and slightly more skeptical ver-
          sion of the PostScript processing code.  Unfortunately,
          there are PostScript documents that can only be viewed with
          the -P option, and there are PostScript documents that can
          only be viewed without it.

          When viewing images with page, it listens to the image
          plumbing channel (see plumber(4)) for more images to dis-
          play.  The -i option causes page to not load any graphics
          files nor to read from standard input but rather to listen
          for ones to load from the plumbing channel.

          The -v option turns on extra debugging output, and the -V
          option turns on even more debugging output.  The -a option

     Page 1                       Plan 9            (printed 11/23/24)

     PAGE(1)                                                   PAGE(1)

          causes page to call abort(2) rather than exit cleanly on
          errors, to facilitate debugging.

          Pressing and holding button 1 permits panning about the
          page.  Typing a q or control-D exits the program.  Typing a
          u toggles whether images are displayed upside-down.  (This
          is useful in the common case of mistransmitted upside-down
          faxes).  Typing a r reverses the order in which pages are
          displayed.  Typing a w will write the currently viewed page
          to a new file as a compressed image(6) file.  When possible,
          the filename is of the form basename.pagenum.bit.  Typing a
          d removes an image from the working set.

          To go to a specific page, one can type its number followed
          by enter.  Typing left arrow, backspace, or minus displays
          the previous page.  Clicking button 2 or typing right arrow,
          space, or enter displays the next page.  The up and down
          arrow pan up and down one half screen height, changing pages
          when panning off the top or bottom of the page.  Button 3
          raises a menu of the pages to be selected for viewing in any
          order.

          Page calls gs(1) to draw each page of PostScript and PDF
          files. It also calls a variety of conversion programs, such
          as those described in jpg(1), to convert the various raster
          graphics formats into Inferno bitmap files.  Pages are con-
          verted ``on the fly,'' as needed.

     EXAMPLES
          page /sys/src/cmd/gs/examples/tiger.ps
               Display a color PostScript file.

          page /usr/inferno/icons/*.bit
               Browse the Inferno bitmap library.

          man -t page | page -w
               Preview this manual in a new window.

     SEE ALSO
          gs(1), jpg(1), tex(1), troff(1)

     SOURCE
          /sys/src/cmd/page

     DIAGNOSTICS
          The mouse cursor changes to an arrow and ellipsis when page
          is reading or writing a file.

     BUGS
          Page supports reading of only one document file at a time,
          and the user interface is clumsy when viewing very large
          documents.

     Page 2                       Plan 9            (printed 11/23/24)

     PAGE(1)                                                   PAGE(1)

          When viewing multipage PostScript files that do not contain
          ``%%Page'' comments, the button 3 menu only contains ``this
          page'' and ``next page'': correctly determining page bound-
          aries in Postscript code is not computable in the general
          case.

          If page has trouble viewing a Postscript file, it might not
          be exactly conforming: try viewing it with the -P option.

          The interface to the plumber is unsatisfactory.  In particu-
          lar, document references cannot be sent via plumbing mes-
          sages.

          There are too many keyboard commands.

     Page 3                       Plan 9            (printed 11/23/24)