PSTOPS(1)                                             PSTOPS(1)





NAME
       pstops - shuffle pages in a PostScript file

SYNOPSIS
       pstops  [ -q ] [ -b ] [ -wwidth ] [ -hheight ] [ -ppaper
       ] [ -dlwidth ] pagespecs [ infile [ outfile ] ]

DESCRIPTION
       Pstops rearranges pages from a PostScript document, cre-
       ating  a new PostScript file.  The input PostScript file
       should follow the  Adobe  Document  Structuring  Conven-
       tions.   Pstops can be used to perform a large number of
       arbitrary  re-arrangements   of   Documents,   including
       arranging  for printing 2-up, 4-up, booklets, reversing,
       selecting front or back  sides  of  documents,  scaling,
       etc.

       pagespecs follow the syntax:

              pagespecs   = [modulo:]specs

              specs       = spec[+specs][,specs]

              spec        =
                          [-]pageno[L][R][U][H][V][@scale][(xoff,yoff)]

       modulo  is  the number of pages in each block. The value
       of modulo should be greater than 0; the default value is
       1.   specs  are the page specifications for the pages in
       each block. The value of the pageno in each spec  should
       be  between 0 (for the first page in the block) and mod-
       ulo-1 (for the last page in each block) inclusive.   The
       optional  dimensions xoff and yoff shift the page by the
       specified amount.  xoff and  yoff  are  in  PostScript's
       points,  but  may  be  followed by the units cm or in to
       convert to centimetres or inches, or the flag w or h  to
       specify  as  a  multiple  of  the  width or height.  The
       optional parameters L, R, U, H and  V  rotate  the  page
       left, right, or upside-down, and flip (mirror) page hor-
       izontally or vertically.  The optional  scale  parameter
       scales  the  page  by  the  fraction  specified.  If the
       optional minus sign is specified, the page  is  relative
       to the end of the document, instead of the start.

       If  page  specs  are  separated  by  + the pages will be
       merged into one page; if they are separated  by  ,  they
       will  be  on  separate pages.  If there is only one page
       specification, with pageno zero, the pageno may be omit-
       ted.

       The  shift,  rotation,  and  scaling  are applied to the
       PostScript transformation matrix in that  order  regard-
       less  of  which  order  they appear on the command line.
       The matrix accumulates the  individual  transformations.
       The  effect  on the image is to first scale with respect
       to an origin at the lower left corner, then rotate about
       the same origin, and finally shift.

       The  -w  option  gives  the width which is used by the w
       dimension specifier, and the -h option gives the  height
       which is used by the h dimension specifier. These dimen-
       sions are also used (after scaling) to set the  clipping
       path  for  each  page.   The -p option can be used as an
       alternative, to set the paper size to a0,  a1,  a2,  a3,
       a4, a5, a6, a7, a8, a9, a10, b1, b2, b3, b4, b5, b6, c0,
       c1, c2, c3, c4, c5,  c6,  jisb0,  jisb1,  jisb2,  jisb3,
       jisb4,  jisb5, jisb6, letter, legal, tabloid, statement,
       executive, folio, quarto, 10x14,  archA,  archB,  archC,
       archD,  flsa,  flse, halfletter, or _glibc, where latter
       one means the format of the current locale. The  default
       paper size is _glibc.

       The  -b  option prevents any bind operators in the Post-
       Script prolog from binding. This may be needed in  cases
       where complex multi-page re-arrangements are being done.

       The -d option draws a line around  the  border  of  each
       page,  of  the specified width.  If the lwidth parameter
       is omitted, a default linewidth of 1 point  is  assumed.
       The  linewidth  is  relative to the original page dimen-
       sions, i.e. it is scaled up or down with the rest of the
       page.

       Pstops normally prints the page numbers of the pages re-
       arranged; the -q option suppresses this.

EXAMPLES
       This section contains some  sample  re-arrangements.  To
       put  two  pages on one sheet (of A4 paper), the pagespec
       to use is:

                 2:0L@.7(21cm,0)+1L@.7(21cm,14.85cm)

       To select all of the odd pages in reverse order, use:

                                 2:-0

       To re-arrange pages for printing 2-up booklets, use

                 4:-3L@.7(21cm,0)+0L@.7(21cm,14.85cm)

       for the front sides, and

                 4:1L@.7(21cm,0)+-2L@.7(21cm,14.85cm)

       for the reverse sides (or join them  with  a  comma  for
       duplex printing).

ENVIRONMENT VARIABLES
       LC_ALL, LC_PAPER
              These variables are specifying the papertype when
              used  paper  is  _glibc.   For  details  see  the
              locale(7) manpage.

AUTHOR
       Copyright (C) Angus J. C. Duggan 1991-1995

SEE ALSO
       psbook(1), psselect(1), pstops(1), epsffit(1), psnup(1),
       psresize(1),  psmerge(1),   fixscribeps(1),   getafm(1),
       fixdlsrps(1),  fixfmps(1),  fixmacps(1),  fixpsditps(1),
       fixpspps(1),   fixtpps(1),   fixwfwps(1),    fixwpps(1),
       fixwwps(1), extractres(1), includeres(1), showchar(1)

TRADEMARKS
       PostScript is a trademark of Adobe Systems Incorporated.

BUGS
       Pstops does not accept all DSC comments.



                PSUtils Release 1 Patchlevel 17       PSTOPS(1)
