2 Copyright (C) 1989-2000, 2001 Free Software Foundation, Inc.
4 Permission is granted to make and distribute verbatim copies of
5 this manual provided the copyright notice and this permission notice
6 are preserved on all copies.
8 Permission is granted to copy and distribute modified versions of this
9 manual under the conditions for verbatim copying, provided that the
10 entire resulting derived work is distributed under the terms of a
11 permission notice identical to this one.
13 Permission is granted to copy and distribute translations of this
14 manual into another language, under the above conditions for modified
15 versions, except that this permission notice may be included in
16 translations approved by the Free Software Foundation instead of in
19 .\" Like TP, but if specified indent is more than half
20 .\" the current line-length - indent, use the default indent.
22 .ie \\n(.$=0:((0\\$1)*2u>(\\n(.lu-\\n(.iu)) .TP
25 .TH GROPS @MAN1EXT@ "@MDATE@" "Groff Version @VERSION@"
27 grops \- PostScript driver for groff
36 .ie \\n(.$-1 .RI "[\ \fB\\$1\fP" "\\$2" "\ ]"
37 .el .RB "[\ " "\\$1" "\ ]"
45 .RI "[\ " files\|.\|.\|. "\ ]"
49 It is possible to have whitespace between a command line option and its
53 translates the output of GNU
58 should be invoked by using the groff command
62 .if '@DEVICE@'ps' (Actually, this is the default for groff.)
63 If no files are given,
65 will read the standard input.
70 to read the standard input.
71 PostScript output is written to the standard output.
76 options can be passed to
85 Workaround broken spoolers and previewers.
88 produces output that conforms
89 the Document Structuring Conventions version 3.0.
90 Unfortunately some spoolers and previewers can't handle such output.
95 does to its output acceptable to such programs.
96 A value of 0 will cause grops not to employ any workarounds.
98 .B %%BeginDocumentSetup
100 .B %%EndDocumentSetup
101 comments should be generated;
102 this is needed for early versions of TranScript that get confused by
105 comment and the first
108 Add 2 if lines in included files beginning with
110 should be stripped out; this is needed for Sun's pageview previewer.
117 stripped out of included files; this is needed for spoolers that
123 Add 8 if the first line of the PostScript output should be
127 this is needed when using Sun's Newsprint with a printer that requires
129 The default value can be specified by a
134 command in the DESC file.
135 Otherwise the default value is 0.
144 Guess the page length.
145 This generates PostScript code that guesses the page length.
146 The guess will be correct only if the imageable area is vertically
147 centered on the page.
148 This option allows you to generate documents that can be printed
149 both on letter (8.5\(mu11) paper and on A4 paper without change.
152 Print the document in landscape format.
155 Turn manual feed on for the document.
160 to the search path for prologue, font, and device description files;
162 is the name of the device, usually
165 .BI \-P prologue-file
168 (in the font path) as the prologue instead of the default prologue file
170 This option overrides the environment variable
174 Lines should be drawn using a thickness of
176 thousandths of an em.
179 Print the version number.
181 There are styles called
187 mounted at font positions 1 to 4.
188 The fonts are grouped into families
198 having members in each of these styles:
200 .if '\\*(.T'ps' .ft \\$1
210 AvantGarde-BookOblique
220 AvantGarde-DemiOblique
280 Helvetica-BoldOblique
290 Helvetica-Narrow-Oblique
295 Helvetica-Narrow-Bold
300 Helvetica-Narrow-BoldOblique
305 NewCenturySchlbk-Roman
310 NewCenturySchlbk-Italic
315 NewCenturySchlbk-Bold
320 NewCenturySchlbk-BoldItalic
363 There is also the following font which is not a member of a family:
367 ZapfChancery-MediumItalic
370 There are also some special fonts called
374 Zapf Dingbats is available as
376 and a reversed version of ZapfDingbats (with symbols pointing in the opposite
377 direction) is available as
379 most characters in these fonts are unnamed and must be accessed using
383 understands various X commands produced using the
387 will only interpret commands that begin with a
391 .BI \eX'ps:\ exec\ code '
392 This executes the arbitrary PostScript commands in
394 The PostScript currentpoint will be set to the position of the
396 command before executing
398 The origin will be at the top left corner of the page,
399 and y coordinates will increase down the page.
402 will be defined that converts groff units
403 to the coordinate system in effect.
411 \eX'ps: exec \enx u 0 rlineto stroke'
415 will draw a horizontal line one inch long.
417 may make changes to the graphics state,
418 but any changes will persist only to the
420 A dictionary containing the definitions specified by the
424 will be on top of the dictionary stack.
425 If your code adds definitions to this dictionary,
426 you should allocate space for them using
427 .BI \eX'ps\ mdef \ n '\fR.
428 Any definitions will persist only until the end of the page.
431 escape sequence with an argument that names a macro,
433 can extend over multiple lines.
449 is another way to draw a horizontal line one inch long.
452 .BI \eX'ps:\ file\ name '
453 This is the same as the
455 command except that the PostScript code is read from file
458 .BI \eX'ps:\ def\ code '
459 Place a PostScript definition contained in
462 There should be at most one definition per
465 Long definitions can be split over several
470 arguments are simply joined together separated by newlines.
471 The definitions are placed in a dictionary which is automatically
472 pushed on the dictionary stack when an
477 escape sequence with an argument that names a macro,
479 can extend over multiple lines.
481 .BI \eX'ps:\ mdef\ n\ code '
490 needs to know how many definitions
493 so that it can create an appropriately sized PostScript dictionary
496 .BI \eX'ps:\ import\ file\ llx\ lly\ urx\ ury\ width\ \fR[\fP\ height\ \fR]\fP '
497 Import a PostScript graphic from
505 give the bounding box of the graphic in the default PostScript
506 coordinate system; they should all be integers;
510 are the x and y coordinates of the lower left
511 corner of the graphic;
515 are the x and y coordinates of the upper right corner of the graphic;
519 are integers that give the desired width and height in groff
520 units of the graphic.
521 The graphic will be scaled so that it has this width and height
522 and translated so that the lower left corner of the graphic is
523 located at the position associated with
526 If the height argument is omitted it will be scaled uniformly in the
527 x and y directions so that it has the specified width.
528 Note that the contents of the
530 command are not interpreted by
532 so vertical space for the graphic is not automatically added,
537 arguments are not allowed to have attached scaling indicators.
538 If the PostScript file complies with the Adobe Document Structuring
539 Conventions and contains a
541 comment, then the bounding box can be automatically
542 extracted from within groff by using the
549 macros (which are automatically loaded when
551 is run by the groff command) include a
553 macro which allows a picture to be easily imported.
556 \&\fB.PSPIC\fP [ \fB\-L\fP | \fB-R\fP | \fB\-I\fP \fIn\fP ]\ \"
557 \fI\|file\fP [ \fIwidth\fP [ \fIheight\fP ]]
560 is the name of the file containing the illustration;
564 give the desired width and height of the graphic.
569 arguments may have scaling indicators attached;
570 the default scaling indicator is
572 This macro will scale the graphic uniformly
573 in the x and y directions so that it is no more than
579 By default, the graphic will be horizontally centered.
584 cause the graphic to be left-aligned and right-aligned
588 option causes the graphic to be indented by
596 .B \eX'ps:\ endinvis'
597 No output will be generated for text and drawing commands
598 that are bracketed with these
601 These commands are intended for use when output from
603 will be previewed before being processed with
605 if the previewer is unable to display certain characters
606 or other constructs, then other substitute characters or constructs
607 can be used for previewing by bracketing them with these
614 is not able to display a proper
616 character because the standard X11 fonts do not provide it;
617 this problem can be overcome by executing the following
622 \&.char \e(em \eX'ps: invis'\e
623 \eZ'\ev'-.25m'\eh'.05m'\eD'l .9m 0'\eh'.05m''\e
624 \eX'ps: endinvis'\e(em
630 will be unable to display the
632 character and will draw the line,
643 must be in the format output by
644 .BR @g@troff (@MAN1EXT@).
646 .BR groff_out (@MAN5EXT@).
647 In addition the device and font description files for the device used
648 must meet certain requirements.
649 The device and font description files supplied for
651 device meet all these requirements.
652 .BR afmtodit (@MAN1EXT@)
653 can be used to create font files from AFM files.
654 The resolution must be an integer multiple of 72 times the
658 device uses a resolution of 72000 and a sizescale of 1000.
659 The device description file should contain a command
663 which says that output should be generated which is suitable for
664 printing on a page whose length is
667 Each font description file must contain a command
669 .BI internalname\ psname
671 which says that the PostScript name of the font is
673 It may also contain a command
675 .BI encoding\ enc_file
678 the PostScript font should be reencoded using the encoding described in
680 this file should consist of a sequence of lines of the form:
687 is the PostScript name of the character,
690 is its position in the encoding expressed as a decimal integer.
691 The code for each character given in the font file must correspond
692 to the code for the character in encoding file, or to the code in the default
693 encoding for the font if the PostScript font is not to be reencoded.
694 This code can be used with the
698 to select the character,
699 even if the character does not have a groff name.
700 Every character in the font file must exist in the PostScript font, and
701 the widths given in the font file must match the widths used
702 in the PostScript font.
704 will assume that a character with a groff name of
706 is blank (makes no marks on the page);
707 it can make use of such a character to generate more efficient and
708 compact PostScript output.
711 can automatically include the downloadable fonts necessary
712 to print the document.
713 Any downloadable fonts which should, when required, be included by
715 must be listed in the file
716 .BR @FONTDIR@/devps/download ;
717 this should consist of lines of the form
724 is the PostScript name of the font,
727 is the name of the file containing the font;
730 and blank lines are ignored;
731 fields may be separated by tabs or spaces;
733 will be searched for using the same mechanism that is used
734 for groff font metric files.
737 file itself will also be searched for using this mechanism.
739 If the file containing a downloadable font or imported document
740 conforms to the Adobe Document Structuring Conventions,
743 will interpret any comments in the files sufficiently to ensure that its
744 own output is conforming.
745 It will also supply any needed font resources that are listed in the
748 as well as any needed file resources.
749 It is also able to handle inter-resource dependencies.
750 For example, suppose that you have a downloadable font called Garamond,
751 and also a downloadable font called Garamond-Outline
752 which depends on Garamond
753 (typically it would be defined to copy Garamond's font dictionary,
754 and change the PaintType),
755 then it is necessary for Garamond to be appear before Garamond-Outline
756 in the PostScript document.
758 will handle this automatically
759 provided that the downloadable font file for Garamond-Outline
760 indicates its dependence on Garamond by means of
761 the Document Structuring Conventions,
762 for example by beginning with the following lines
765 %!PS-Adobe-3.0 Resource-Font
768 %%DocumentNeededResources: font Garamond
774 %%IncludeResource: font Garamond
776 In this case both Garamond and Garamond-Outline would need to be listed
780 A downloadable font should not include its own name in a
781 .B %%DocumentSuppliedResources
789 .BR %%DocumentNeededResources ,
790 .BR %%DocumentSuppliedResources ,
791 .BR %%IncludeResource ,
797 .BR %%DocumentNeededFonts ,
798 .BR %%DocumentSuppliedFonts ,
815 (in the font path) instead of the default prologue file
819 overrides this environment variable.
821 .Tp \w'\fB@FONTDIR@/devps/download'u+2n
822 .B @FONTDIR@/devps/DESC
823 Device description file.
825 .BI @FONTDIR@/devps/ F
826 Font description file for font
829 .B @FONTDIR@/devps/download
830 List of downloadable fonts.
832 .B @FONTDIR@/devps/text.enc
833 Encoding used for text fonts.
835 .B @MACRODIR@/ps.tmac
838 automatically loaded by
841 .B @MACRODIR@/pspic.tmac
845 automatically loaded by
848 .B @MACRODIR@/psold.tmac
849 Macros to disable use of characters not present in older
850 PostScript printers (e.g. `eth' or `thorn').
852 .BI /tmp/grops XXXXXX
855 .BR afmtodit (@MAN1EXT@),
856 .BR groff (@MAN1EXT@),
857 .BR @g@troff (@MAN1EXT@),
858 .BR psbb (@MAN1EXT@),
859 .BR groff_out (@MAN5EXT@),
860 .BR groff_font (@MAN5EXT@),
861 .BR groff_char (@MAN7EXT@)