text2ps(1)

text2ps - convert text files to PostScript

As shipped in IRIX 6.5.7. Unchanged since IRIX 6.5.

NAME
     text2ps - convert text files to PostScript

SYNOPSIS
     text2ps [-p filename] [-z filename]
             [-J printername] [-s pageSize] [-F fontName[size]]
             [-F %{a-z}fontName[size]] [-P fontSize]
             [-o orientation] [-S pageStyle] [-M numColumns]
             [-w lineWrap] [-K maxLines] [-m outputMode]
             [-E headerText] [-l locale] [-L leftMargin]
             [-R rightMargin] [-B bottomMargin] [-T topMargin]
             [-A allMargins] [-n pageNum] [-x]
             [-e reencodeFont] [-i prologFile] [-d metricsDir]
             [-g pageSizeFile] [-h] [-v] [-Q[Q[Q]]]
             [text file ...]

     For compatibility with lptops the following options are provided:

             [-G] [-N [tb][lcr]pageNum] [-H]
             [-V] [-U] [-O arg] [-I arg]
             [-D] [-C arg] [-X] [-W]

DESCRIPTION
     text2ps formats text using the PostScript page description language. The
     program provides a wide variety of formatting options including multiple
     column output, page rotation, font selection and page decoration.

   Text File Input
     One or more text files can be specified on the command line. If no files
     are specified on the command line, text2ps will read from the standard
     input. Currently, text2ps can accept plain text files in a number of
     languages. The program has successfully formatted English, French,
     German, and Russian (cyrillic) text files and theoretically should be
     able to handle any language that can be expressed using an Adobe Type 1
     font in a horizontal writing direction.  text2ps cannot currently handle
     Adobe Type 0 composite fonts or vertical writing directions.

     Besides plain text files, text2ps can accept text files that contain
     formatting control characters and special escape sequences. The most
     common example of such files are formatted nroff manual pages.  text2ps
     has successfully handled the complex formatting produced by the tbl and
     eqn programs. The following control characters and escape sequences are
     recognized by text2ps:

             Name        Char   Code   Description
             _________________________________________________________
             Null               0x00   No action
             Bell        ^G     0x07   Audible bell
             Backspace   ^H     0x08   Reverse one character
             H Tab       ^I     0x09   Forward to next multiple of 8

             Newline     ^J     0x0A   Start new line
             V Tab       ^K     0x0B   Down one line
             Formfeed    ^L     0x0C   Begin new page or column
             Return      ^M     0x0D   Reverse to start of line
             Shift Out   ^N     0x0E   No action
             Shift In    ^O     0x0F   No action
             Esc                0x1B   Begin escape sequence
             Esc-7                     Reverse full line feed
             Esc-8                     Reverse half line feed
             Esc-9                     Forward half line feed
             Esc-D                     Gaudy header left box text
             Esc-H                     Gaudy header filename area text
             Esc-U                     Gaudy user comment area text
             Esc-F                     Font change sequence

     See the Special Escape Sequences section below for details on the Esc-D,
     Esc-H, Esc-U and Esc-F sequences.

     Control characters and escape sequences not listed above will cause
     text2ps to issue a warning indicating the offending character and its
     location in the text file. To prevent inadvertently attempting to format
     a binary file, text2ps will terminate the processing of any file that
     contains more than fifty unrecognized characters unless the -x option has
     been specified (see below). To ensure the proper processing of text files
     the international locale should be established either by setting the LANG
     environment variable prior to running text2ps or by using the -l command
     line option.

   PostScript Output
     text2ps produces Level 1 PostScript code formatted in compliance with the
     Adobe Document Structuring Conventions, Version 3.0. The output data is
     7-bit clean even when the input data is not.  By default, text2ps writes
     its PostScript output to the standard output.

   Command Line Options
     The command line option switches for text2ps are compatible with the
     upper case version of the lptops program option letters. text2ps provides
     additional functionality typically using lowercase option letters.

     -p filename
               Specifies the name of the file to which the PostScript output
               will be written.  If the -p option is not specified, output
               will be sent to the standard output.

     -z filename
               By default, text2ps sends its error, warning and information
               messages to the standard error. The -z option specifies the
               name of a file to which these messages should be redirected. If
               the file specified already exists, any messages generated by
               text2ps will be appended to the end of the file.

     -J printername
               Specifies the name of a printer for which the text is to be
               formatted.  printername is the name of the printer as
               registered with the printer spooling system (see printers(1M)
               for information on printer installation). The printer may be
               physically attached to the system or it may be a network
               printer.

               Specifying a printer allows text2ps to obtain detailed printer
               configuration information such as the currently loaded page
               size, available fonts and physical margins. This information is
               used to provide the optimum formatting of the text file for the
               specified printer.

               If the -J option is not specified, text2ps assumes a default
               target environment consisting of an A size page with 0.5 inch
               margins. If the resulting PostScript file is subsequently sent
               to a printer whose printing area is smaller than the default,
               the text will be scaled to fit the target page. When scaling is
               performed, the aspect ratio of the original page is maintained.

     -s pageSize
               Specifies a page size to use when formatting text. The default
               page size is A (8.5 by 11.0 inches). pageSize may be specified
               either as the name of a page size (e.g. A, B, Ledger, Monarch)
               or explicitly using page dimensions. The syntax for specifying
               page dimensions is <width>x<height>[<units>] where <units> may
               be in, cm, mm, pt for inches, centimeters, millimeters and
               points respectively. If <units> is not specified, inches are
               assumed. Thus, a B size page may be specified by setting
               pageSize to B or 11x17in.

               If a printer has not been specified (see -J option above),
               text2ps looks up the dimensions corresponding to a page size
               name in the file /usr/lib/print/data/text2psPageSizes. If a
               printer has been specified, it is queried for the dimensions of
               the specified page size name. If the page size is not supported
               on the printer, the disk based page size table is used.  If a
               page size name is not found on the printer and in the disk
               based table, the default, A size, is used.

               Refer to the /usr/lib/print/data/text2psPageSizes for a list of
               the supported page size names and for instructions on how to
               add new page sizes.

     -F fontName[size]
               Specifies the font and, optionally, point size to use for the
               body text. The body text is all text on the page excluding the
               page header. The default body font is Courier10. fontName may
               be any Adobe Font Metric (AFM) file name or one of the font
               name abbreviations listed in the Font Name Abbreviations
               section below. By default, text2ps looks in the directory
               /usr/lib/DPS/AFM for font metric files. If the metric file for
               a specified font name cannot be found, the Courier font is
               substituted. If size is not specified, the default point size
               will be used. The default point size is 10 but may be changed
               using the -P option. Examples of valid font specifications are
               Courier and Courier14.

     -F %{a-z}fontName[size]
               text2ps allows up to 26 fonts to be registered for later use. A
               font is registered by prefixing the font specification with a %
               and a lower case letter between a and z inclusive. By embedding
               special escape sequences (see section below) in a text file, it
               is possible to dynamically change the font used when formatting
               the file. text2ps automatically registers the following fonts:


                     Specification      Purpose
                     __________________________________________________
                     %rCourier10        Default body font
                     %hCourier-Bold10   Simple header font
                     %lTimes-Bold12     Gaudy header time/date font
                     %cTimes-Roman14    Gaudy header file pathname font
                     %pHelvetica30      Gaudy header page number font

               Note that the %l, %c and %p fonts are registered only when the
               gaudy page style is used.

     -P fontSize
               Specifies the point size to use with fonts that have been
               specified only by name (e.g. Courier as opposed to Courier14).
               The default point size is 10.  Note that all font sizes are
               expressed in units of points. Any units specified as part of
               fontSize will be silently ignored and the value will be assumed
               to be expressed in points.

     -o orientation
               If orientation is specified as rotate the entire output page
               will be rotated 90 degrees counter-clockwise. Using this
               option, landscape oriented output can be obtained on a portrait
               page. norotate, the default, can be specified to disabled page
               rotation.

     -S pageStyle
               Specifies the page decoration to be used. One of the following
               values of pageStyle may be specified:

               plain     Indicates that no page decoration is to be used. This
                         is the default style.

               pagenum[,[tb][lcr]
                         Places a page number at the specified location on the
                         page. The default page number location is at the top,
                         center of the page. A different location can be
                         specified by placing a comma after the pagenum value
                         and then specifying a letter sequence. The letters
                         indicate a vertical page position (t = top, b =
                         bottom) and a horizontal page position (l = left, c =
                         center, r = right). All letters are optional and may
                         be specified in any order. There must not be any
                         whitespace between the comma and the letters.

               header    Places a simple one line text header at the top of
                         each output page. The header consists of the current
                         date, the current time, the full pathname of the
                         input file, if available, and the page number.

               gaudy     Provides the same information as the simple header
                         but in a more graphic layout with additional space
                         for a user supplied comment (see -E below).  Note
                         that file pathnames too long to fit in the available
                         space will be truncated starting from the left with
                         leading ellipses added in place of the discarded
                         text.

     -M numColumns
               text2ps places a single column of text on the page by default.
               The -M option allows the page to be divided into an arbitrary
               number of columns. Typically, when using more than a single
               column, the font size should be reduced to avoid excessive line
               wrapping. A common use of this option is formatting text in
               landscape orientation for an A size page. In this case two
               columns of seven point Courier type makes excellent use of the
               page.

     -w lineWrap
               When the length of a line of text is greater than the available
               width of the page or column the remaining text may either be
               discarded (i.e. clipped) or wrapped around to the next line.
               lineWrap is either wrap, the default, which wraps long text
               lines to the next line or clip which discards text that does
               not fit on the line.

     -K maxLines
               Normally, text2ps places as many lines of text on the page as
               will fit (equivalent to specifying maxLines as 0).  The -K
               option places a maximum limit on the number of lines placed on
               a page or column.  The number of lines actually produced will
               be either maxLines or the number that can fit on the page
               whichever is less. However, if the -K option is used with the
               fit mode of the -m option, the output page is scaled, if
               necessary, to ensure that exactly maxLines number of lines are
               produced on the page. See the -m option below for more
               information.

     -m outputMode
               By default, text2ps places as many lines of text on the page as
               will fit.  This is the normal output mode. Certain text files
               such as manual pages have been preformatted with page breaks
               assuming a specific number of lines per page. To ensure the
               proper processing of these files the -m option should be
               specified with fit as the outputMode and the -K option should
               be specified with the required number of lines per page. The
               typical specification for a manual page would be -m fit and -K
               66.

     -E headerText
               Specifies a comment to be placed on the page header. If the -S
               option has specified the header page style, the headerText will
               replace the file pathname. If the -S option has specified the
               gaudy page style, the headerText will be placed above the file
               pathname.

     -l locale In order to successfully format a text file text2ps must know
               the file's language. The language of the text file is conveyed
               by specifying an international locale (see environ(5)). If the
               -l option is not specified, the locale is determined by the
               value of the LANG environment variable. If -l is specified, the
               locale is set to the value of locale. The directory
               /usr/lib/locale contains entries for each locale available on
               the system.

     -L leftMargin
     -R rightMargin
     -B bottomMargin
     -T topMargin
     -A allMargins
               Specifies the margins to be used when formatting the page. The
               default text2ps margin is 0.5 inches on all sides. Margins are
               specified using the syntax <value>[<units>] where <units> may
               be in, cm, mm, pt for inches, centimeters, millimeters and
               points respectively. If <units> is not specified, inches are
               assumed. Thus, a 5 centimeter margin would be specified as 5cm.
               The manual setting of margins is discouraged since it disables
               text2ps's automatic scaling mechanism. If a margin is manually
               specified that is smaller than a printer's physical margins,
               clipping of the output may result. This cannot occur when the
               default text2ps margins are used. The -A option is provided as
               a convenience when all four margins are to be set to the same
               value.

     -n pageNum
               Specifies the starting value for page numbering. The default
               starting page number is 1. pageNum must be greater than or
               equal to zero. If multiple input text files are processed, each
               will be numbered starting at the specified page number. For
               example, if -n 3 is specified and two input text files are
               processed, the pages of each file will be numbered starting at
               3.

     -x        text2ps recognizes plain text characters, a number of common
               control characters and a set of special escape sequences. All
               other characters cause a warning message to be issued
               identifying the character and its location in the input file.
               If more than 50 characters in a file are unrecognized, the
               processing of that file terminates. This prevents inadvertently
               attempting to format a binary file. If a file is to be
               formatted that contains unrecognizable characters, the -x
               option should be specified. This silences all unrecognized
               character warnings and allows an unlimited number of
               unrecognized characters to be processed.

     -e reencodeFont
               Each character in a text file has a unique code number. These
               code numbers are used to select a character glyph in a font.
               When using only ASCII characters the correspondence of
               character codes to character glyphs is very straight forward.
               However, when formatting text for international locales the
               interpretation of character codes outside the ASCII code range
               becomes an issue. Many commonly used Adobe Type 1 fonts have a
               character code to character glyph mapping that is incorrect for
               many European locales.  text2ps automatically corrects this by
               reencoding the font to provide the correct character glyphs.
               This automatic reencoding of a font is performed only if that
               font has been encoded using the Adobe Standard Encoding. All
               other font encodings are untouched. Reencoded fonts conform to
               the ISO 8859-1 specification. The -e option can be used to
               disable the automatic reencoding of Adobe Standard Encoding
               fonts.

     -i prologFile
               text2ps places a PostScript code prolog at the start of the
               output file.  By default, this prolog code is read from the
               file /usr/lib/print/data/text2psProlog.  The -i switch allows a
               different prolog file to be specified. This switch is not
               intended for general use.

     -d metricsDir
               In order to format text, text2ps uses Adobe Font Metric (AFM)
               files.  The default location for these files is
               /usr/lib/DPS/AFM. When metric information is needed for a font,
               the metrics directory name is prepended to the font name to
               form the full pathname of the AFM file. The -d option allows a
               different directory to be specified for the font metrics.

     -g pageSizeFile
               text2ps maintains a file containing page size names and their
               corresponding dimensions. The default page size file is
               /usr/lib/print/data/text2psPageSize. The -g option allows a
               different page size file to be specified.

     -h        Prints a program usage message to the standard error.

     -v        Prints a message summarizing the results of formatting the
               specified text.

     -Q        Specifies that detailed runtime processing information is to be
               provided. The more Q's that are specified, the more detailed
               the runtime information.  Currently, up to three Q's provide
               coarse, medium and fine levels of information respectively.

     The following command line options are provided only for compatibility
     with the lptops program. Certain options are equivalent to standard
     text2ps options while others are silently ignored.

     -G        Equivalent to -S gaudy.

     -N [tb][lcr]pageNum
               Equivalent to -S pagenum[,[tb][lcr]] -n pageNum.

     -H        Equivalent to -o rotate.

     -V        Equivalent to -o norotate.

     -U        Ignored.

     -O arg    Ignored.

     -I arg    Ignored.

     -D        Equivalent to -e noreencode

     -C arg    Ignored.

     -X        Ignored.

     -W        Equivalent to -w wrap.

   Special Escape Sequences
     text2ps recognizes a number of special escape sequences. These sequences
     can be embedded in a text file to change header text and switch fonts
     during processing of  the file.  The escape sequences are compatible with
     those used by the enscript program from the Adobe TranScript product. The
     sequences are:

              Escape Sequence      Description
              _______________________________________________________
              Esc-D(top)(bottom)   Gaudy header left box text
              Esc-HheaderText      Gaudy header filename area text

              Esc-UcommentText     Gaudy user comment area text
              Esc-Fc               Font change sequence where c
                                   is the letter of a font registered
                                   using -F %{a-z} fontName[size]

   Font Name Abbreviations
     text2ps accepts the following font name abbreviations. These
     abbreviations are identical to those used by the lptops program.

              Full Name                      Abbreviation
              ______________________________________________________
              Courier                        C
              Courier-Bold                   CB
              Courier-BoldOblique            CBO
              Courier-Oblique                CO
              Helvetica                      H
              Helvetica-Bold                 HB
              Helvetica-BoldOblique          HBO
              Helvetica-Oblique              HO
              Symbol                         S
              Times-Bold                     TB
              Times-BoldItalic               TBI
              Times-Italic                   TI
              Times-Roman                    T
              AvantGarde-Book                AGB
              AvantGarde-BookOblique         AGBO
              AvantGarde-Demi                AGD
              AvantGarde-DemiOblique         AGDO
              Bookman-Demi                   BD
              Bookman-DemiItalic             BDI
              Bookman-Light                  BL
              Bookman-LightItalic            BLI
              Helvetica-Narrow               HN
              Helvetica-Narrow-Bold          HNB
              Helvetica-Narrow-BoldOblique   HNBO
              Helvetica-Narrow-Oblique       HNO
              NewCenturySchlbk-Bold          NCSB
              NewCenturySchlbk-BoldItalic    NCSBI
              NewCenturySchlbk-Italic        NCSI
              NewCenturySchlbk-Roman         NCSR
              Palatino-Bold                  PB
              Palatino-BoldItalic            PBI
              Palatino-Italic                PI
              Palatino-Roman                 PR
              ZapfChancery-MediumItalic      ZCMI
              ZapfDingbats                   ZD

EXAMPLES
     1.   Formatting a manual page:

          pcat csh.z | text2ps -K 66 -m fit > csh.ps


     2.   Formatting a file using a 14 point Helvetica font:

          text2ps -F Helvetica14 /etc/passwd > passwd.ps


     3.   Formatting a file for two column, landscape oriented output on the
          printer 'dj':

          text2ps -J dj -o rotate -M 2 -F Courier7 /etc/passwd | lp -ddj


NOTES
     1.   The text2ps program supersedes the lptops program. The lptops
          program should not be used for new development and may be removed
          from future releases.

     2.   The PostScript output produced by text2ps conforms to the Adobe
          PostScript Document Structuring Conventions Version 3.0 as specified
          in Appendix G of the "PostScript Language Reference Manual", 2nd
          edition.

     3.   If text2ps is given an unrecognized or incomplete command line
          option switch, it will print a warning message to the standard
          error, ignore the option and continue processing.

     4.   If a file is specified on the command line, text2ps will not read
          its stdin for text files.

     5.   text2ps can only process a single file when reading from standard
          input.

     6.   Use a of proportional spaced font or dynamically changing fonts when
          formatting manual pages can cause misformatting of tables.

     7.   For compatibility with the lptops program, the units of big points
          may be specified using bp for the page size and margin options.
          text2ps treats big points equal to points (pt).

     8.   text2ps uses command line option letters which violate the
          Impressario Filter-Driver Specification. This is done to provide
          compatibility with the lptops program.

FILES
     /usr/lib/print/text2ps                  Program file
     /usr/lib/print/data/text2psProlog       PostScript prolog file
     /usr/lib/print/data/text2psPageSizes    Page size name and dimension
                                             table

     /usr/lib/DPS/AFM                        Font metric files

TRADEMARKS
     PostScript is a registered trademark of Adobe Systems, Inc.

SEE ALSO
     imprint(1), psrip(1), PostScript Language Reference Manual - 2nd ed.,
     Adobe Systems, Inc.  environ(5)