Museum

Home

Lab Overview

Retrotechnology Articles

Online Manuals

⇒ xfig(1) — BSD/386 1.0

Media Vault

Software Library

Restoration Projects

Artifacts Sought

Related Articles

fig2dev(1)



XFIG(1)                                                   XFIG(1)


NAME
       xfig  -  Facility  for  Interactive  Generation of figures
       under X11

SYNOPSIS
       xfig [options] [file]

DESCRIPTION
       Xfig is a menu-driven tool that allows the  user  to  draw
       and  manipulate  objects interactively in an X window.  It
       runs under X version 11 release 4 or higher and requires a
       three-button  mouse.  file specifies the name of a file to
       be edited. The description of objects in the file will  be
       read at the start of xfig.

       The  TransFig  package  is  used  to print the output from
       xfig.

       Note for previous xfig users:

       The f2p and f2ps translators have been phased out  because
       the  TransFig  package  from  Micah Beck is a more general
       purpose  translator  for  more  graphics  languages.   The
       TransFig  package  can  be used as a back-end processor to
       xfig to produce various types of output:

       LaTeX -     fig2dev -L latex translates xfig to LaTeX pic-
                   ture  environment  commands  which can be pro-
                   cessed along with other LaTeX commands.

       Postscript -
                   fig2dev -L ps produces a PostScript output.

       Pic -       fig2dev -L pic produces a pic output.

       PiCTeX -    fig2dev  -L  pictex  produces  PiCTeX  output.
                   This contains macros that can be used with the
                   PiCTeX environment under TeX or LaTeX.

       Others -    fig2dev has options for these other languages:
                   box, epic, eepic, and eepicemu.

       The  TransFig  package  is  available from the contributed
       software on the distribution tapes of X11 Release  5  from
       MIT  and  from ftp.cs.cornell.edu (directory /pub/fig) and
       sun.soe.clarkson.edu (directory /pub/transfig) via  anony-
       mous  ftp.  It is also available by mail from the Clarkson
       archive server.  To find out about using the server,  send
       the     one-line     message     "help"     to    archive-
       server@sun.soe.clarkson.edu.

       Note: TransFig versions 2.1.4 and later support color out-
       put for PostScript.




                   Release 2.1.3 (Protocol 2.1)                 1




XFIG(1)                                                   XFIG(1)


OPTIONS
       -ri[ght]
              Change the position of the side panel window to the
              right of the canvas window (default: left).

       -le[ft]
              Change the position of the side panel window to the
              left of the canvas window.

       -mo[nochrome]
              Use black and white only.

       -L[andscape]
              Make  xfig  come  up  in landscape mode (10" x 8").
              This is the default.

       -P[ortrait]
              Make xfig come up in portrait mode (8" x 9").

       -pw[idth] units
              Make xfig come  up  units  wide  (where  units  are
              either cm or in).

       -ph[eight] units
              Make  xfig  come  up  units  high  (where units are
              either cm or in).

       -tr[ack]
              Turn on cursor (mouse) tracking arrows (default).

       -not[rack]
              Turn off cursor (mouse) tracking arrows.

       -inc[hes]
              Make inches the unit of choice (default).

       -me[tric]
              Make centimeters the unit of choice.

       -inv[verse]
              Use inverse video (white on black).

       -fg color
              Use color as the foreground color and default color
              for objects.  -bg color Use color as the background
              color for the canvas and buttons.

       -de[bug]
              Turn on debugging mode.  Prints  various  debugging
              messages like font names etc.

       -nor[mal] font
              Cause the font used for the message panel and ruler
              numbers to be font.  This font is also used on  the



                   Release 2.1.3 (Protocol 2.1)                 2




XFIG(1)                                                   XFIG(1)


              canvas  when  the selected font is not available in
              an X11 font (default = fixed).

       -bu[tton] font
              Cause the font used for most  buttons  to  be  font
              (default = 6x13).

       -bol[d] font
              Cause  the  font  used  for displaying confirmation
              messages to be font (default = 8x13bold).

       -startf[ontsize] pointsize
              Set the default font size for text objects (default
              = 12pt).

       -startp[sFont] font
              Set the starting font name for Postscript fonts.

       -startl[atexFont] font
              Set the starting font name for LaTeX fonts.

       -sh[owallbuttons]
              Show all the xfig indicator buttons instead of only
              those relevant to the current drawing  mode.   Nor-
              mally,  the  buttons  line  width,  area-fill, grid
              mode, text size, etc. are only  visible  when  they
              are  relevant  to  the  current  drawing mode.  The
              -showallbuttons option makes all of  the  indicator
              buttons  visible  at all times.  This takes up more
              screen real estate, but allows the user to see  all
              settable parameters.

       -internalBW width
              Use  lines  of  width width between all buttons and
              panels (default = 1).

       -lat[exfonts]
              Start xfig with LaTeX  font  selection.   Normally,
              the  PostScript fonts are available as the default.
              This flag selects the LaTeX fonts to start.

       -sp[ecialtext]
              Start xfig with the  special  text  mode  for  text
              objects.

       -sc[alablefonts]
              Allows use of the X11R5 scalable fonts.

       -k[eyFile] compose-key-file
              Use  compose-key-file instead of CompKeyDB for com-
              pose key database.  This file must be in  the  xfig
              libarary directory, usually /usr/local/lib/xfig.





                   Release 2.1.3 (Protocol 2.1)                 3




XFIG(1)                                                   XFIG(1)


GRAPHICAL OBJECTS
       The objects in xfig are divided into primitive objects and
       compound objects. The primitive objects are: ARC,  CIRCLE,
       CLOSED  SPLINE,  ELLIPSE,  POLYLINE, POLYGON, ENCAPSULATED
       POSTSCRIPT, BOX, ARC-BOX, SPLINE, and TEXT.

       A primitive object can be moved, rotated,  flipped  verti-
       cally  or  horizontally,  scaled, copied, aligned within a
       compound object or erased.  The TEXT primitive may not  be
       flipped.  It  may be rotated but only the markers show the
       rotation (on-screen).  Text IS rotated on PostScript  out-
       put.  The attributes of any primitive object can be edited
       using a popup panel (discussed below),  so  you  can,  for
       instance, set the position of an object manually.

       A  compound  object  is composed of primitive objects. The
       primitive objects that constitute a compound  can  not  be
       individually  modified,  but they can be manipulated as an
       entity; a compound can be moved, rotated,  flipped  verti-
       cally  or  horizontally, scaled, copied or erased.  A com-
       pound that contains any boxes, arc-boxes, ellipses or cir-
       cles may only be rotated by 90 degrees.

       Regular  polygons  may  be created using a special drawing
       mode, but a general POLYGON is created as a result,  which
       may then be modified, i.e.  the individual vertices may be
       moved if desired.

DISPLAY WINDOWS
       Nine regions comprise the display area of xfig:  the  com-
       mand  region,  top ruler, side ruler, drawing mode region,
       editing mode region, message region, indicator region with
       buttons  to  set  and  show  current  line thickness, line
       style, color, area-fill gray color and several other  set-
       tings,  mouse function indicator region and canvas region.
       (The mouse function indicator region was inspired  by  the
       UPS  debugger  from  the University of Kent.)  The drawing
       and editing mode regions may be placed (together)  to  the
       left or right of the the canvas window (default: left).

COMMAND PANEL FUNCTIONS
       Quit   Exit  from xfig, discarding the figure. If the fig-
              ure has been modified and not saved, the user  will
              be  asked  to  confirm  the action, by clicking the
              left button on a confirm/cancel popup menu.

       Delete ALL
              Delete all objects from the canvas window  (may  be
              undone).

       Undo   Undo  the last object creation, deletion or modifi-
              cation.

       Redraw Redraw the canvas.



                   Release 2.1.3 (Protocol 2.1)                 4




XFIG(1)                                                   XFIG(1)


       Paste  Paste  the  object  previously  copied   into   the
              cut/paste  file  into  the  current  figure (at its
              original position).

       File   Left mouse button pops up a  panel  which  contains
              several file-related functions:


            Current Filename
                   This  is  a  label widget showing the current file-
                   name.  It is automatically updated from  the  File-
                   name  Ascii  widget when the Load operation is exe-
                   cuted, either by pressing the Load button or press-
                   ing return in the Filename window.

            Filename
                   This  is an editable AsciiTextWidget which contains
                   the current filename.  Pressing return in the File-
                   name  window will Load the file and update the Cur-
                   rent Filename widget.

            (File) Alternatives
                   Pressing the left mouse button on a filename in the
                   file  alternatives  window will select that file by
                   copying the filename into Filename window.

            Filename Mask
                   A wildcard mask may be  typed  into  this  editable
                   AsciiTextWidget to restrict the search of filenames
                   to a subset ala the ls command.  Pressing return in
                   this  window  will automatically rescan the current
                   directory.  This string may be set by  setting  the
                   resource *filepanel*mask*string.

            Current Directory
                   This is an editable AsciiTextWidget which shows the
                   current directory.  It may be modified by the  user
                   to  manually  set a directory name.  When return is
                   pressed in this window the directory  specified  is
                   scanned  for  files  matching  the Filenamemask, if
                   any.

                   The ~ (tilde) character may be used  to  specify  a
                   user's  home directory, ala unix shell tilde expan-
                   sion.

            (Directory) Alternatives
                   Pressing the left mouse button on a directory  name
                   in  the  directory  alternatives  list  will  do  a
                   "change directory" to that directory.

                   Pressing the right mouse button in either the  file
                   or  Directory Alternatives window will do a "change
                   directory" to the parent directory.



                        Release 2.1.3 (Protocol 2.1)                 5




     XFIG(1)                                                   XFIG(1)


            Home   This button will change the  current  directory  to
                   the user's home directory.

            Rescan This button will rescan the current directory.

            Cancel This  pops  down  the file panel without making any
                   changes to the directory or file name.

            Save   Save the current contents of the canvas in the file
                   specified  in  the  File  menu  item.   If the file
                   already  exists  a  confirmation  popup  menu  will
                   appear  asking  the  user  to confirm or cancel the
                   save.

            Load   The current contents of the canvas are cleared  and
                   the  figure  is read from the filename specified in
                   the File menu item.  This file will become the cur-
                   rent file.  Pressing return in the file name window
                   will also load the file.

                   A popup message window will appear  and  diagnostic
                   messages will be written if xfig changes any "ille-
                   gal" object values to legal values.   For  example,
                   older  versions of xfig were lax about initializing
                   unused parts such as depth, and would produce  very
                   large, random values.  Xfig now will "clean up" bad
                   values and inform you when it does  so.   Also,  if
                   you  read in an older file format, xfig will inform
                   you that it is converting it to the current  format
                   for that version of xfig.

                   This  window  can  be  popped  down by clicking the
                   mouse button on the Dismiss button.   The  messages
                   will be cleared before reading a new file.

            Merge Read
                   Read figure from the filename specified in the File
                   menu item and merge  it  with  the  figure  already
                   shown on the canvas.  The filename in the File will
                   revert to the previous filename after this function
                   is completed.

                   See  Load above for a description of the popup mes-
                   sage window.

            Right mouse button invokes Save function  without  popping
            up the file panel.


       Export Will let you export the figure to an output file in
              one of several formats.  Left mouse button pops  up
              a  directory browser widget and a menu with several
              export-related functions:




                   Release 2.1.3 (Protocol 2.1)                 6




XFIG(1)                                                   XFIG(1)


            Magnification
                   This is an editable AsciiTextWidget which  contains
                   the magnification to use when translating figure to
                   the output language.

            Orientation
                   This button  will  toggle  the  output  orientation
                   between Landscape (horizontal) and Portrait (verti-
                   cal).  The default orientation is the same  as  the
                   mode that xfig was started with.

            Justification
                   This  window  will  only be sensitive when the lan-
                   guage  selected  is  "ps"  (PostScript).   You  may
                   choose that the figure is flush left or centered in
                   the output file.

            Language
                   The translation language to  use  for  xfig  output
                   when  output is directed to a file.  The default is
                   PostScript.  The figure may  be  saved  as  an  X11
                   bitmap  by choosing Xbitmap as the output language.
                   The bitmap is created from the figure, the size  of
                   which  is  determined by the enclosing rectangle of
                   all the figure plus a small border.

            Default Output Filename
                   This is read-only  AsciiTextWidget  which  contains
                   the filename that will be used to write output to a
                   file if there is no name specified in Output  File.
                   The  default  is  the figure name plus an extension
                   that reflects the output language used.

            Output Filename
                   This is an editable AsciiTextWidget which  contains
                   the  filename  to  use  to  write output to a file.
                   Pressing return in  this  window  will  Export  the
                   file.

            (File) Alternatives
                   Pressing the left mouse button on a filename in the
                   file alternatives window will select that  file  by
                   copying the filename into Filename window.

            Filename Mask
                   A  wildcard  mask  may  be typed into this editable
                   AsciiTextWidget to restrict the search of filenames
                   to a subset ala the ls command.  Pressing return in
                   this window will automatically rescan  the  current
                   directory.   This  string may be set by setting the
                   resource *exportpanel*mask*string.

            Current Directory
                   This is an editable AsciiTextWidget which shows the



                        Release 2.1.3 (Protocol 2.1)                 7




     XFIG(1)                                                   XFIG(1)


                   current  directory.  It may be modified by the user
                   to manually set a directory name.  When  return  is
                   pressed  in  this window the directory specified is
                   scanned for files  matching  the  Filenamemask,  if
                   any.

                   The  ~  (tilde)  character may be used to specify a
                   user's home directory, ala unix shell tilde  expan-
                   sion.

            (Directory) Alternatives
                   Pressing  the left mouse button on a directory name
                   in  the  directory  alternatives  list  will  do  a
                   "change directory" to that directory.

                   Pressing  the right mouse button in either the file
                   or Directory Alternatives window will do a  "change
                   directory" to the parent directory.

            Home   This  button  will  change the current directory to
                   the user's home directory.

            Rescan This button will rescan the current directory.

            Cancel This button will pop down the  print  menu  without
                   doing any print operation.

            Export This button writes the figure to the file using the
                   selected language.  If the file already  exists,  a
                   confirmation  window  will popup to ask the user to
                   confirm the write or cancel.   Pressing  return  in
                   the  Output  Filename  window  will also Export the
                   file.

            Right mouse button invokes Export function without popping
            up the export panel.


       Print  Left  mouse  button  pops  up  a  menu with several
              print-related functions:


            Magnification
                   This is an AsciiTextWidget which contains the  mag-
                   nification  to  use  when translating figure to the
                   output language.

            Orientation
                   This button  will  toggle  the  output  orientation
                   between Landscape (horizontal) and Portrait (verti-
                   cal).  The default orientation is the same  as  the
                   mode that xfig was started with.





                        Release 2.1.3 (Protocol 2.1)                 8




     XFIG(1)                                                   XFIG(1)


            Justification
                   This button will bring up a sub-menu from which you
                   may choose center or flush left to justify the fig-
                   ure on the page.  The default is flush left.

            Printer
                   This  is  an  AsciiTextWidget  which  contains  the
                   printer to use if output is directed to a  printer.
                   The  name  of  the  printer  may be set setting the
                   resource *printer*string.

            Cancel This button will pop down the  print  menu  without
                   doing any print operation.

            Print  This  button sends the figure to the printer.  Note
                   that the figure that is printed is what you see  on
                   the canvas, not necessarily the figure file.  I.e.,
                   if you haven't saved  the  figure  since  the  last
                   changes,  the  figure  from  the canvas is printed.
                   Xfig writes the figure to a temporary  file  to  do
                   this.   The name of the file is /tmp/xfig-printPID,
                   where PID is the process ID of xfig.

            Right mouse button invokes Print function without  popping
            up the print panel.



INDICATOR PANEL COMMAND DESCRIPTIONS
       The  indicator panel contains buttons to set certain draw-
       ing parameters, such as line thickness, canvas grid, rota-
       tion  angle  etc.   All  of the buttons use the same mouse
       buttons for setting values.  Pressing the left mouse  but-
       ton on the indicator will pop up a panel in which either a
       value may be typed (e.g. for  a  line  thickness)  or  the
       mouse  may  be clicked on one of several buttons (e.g. for
       grid style or font name).  For those that expect a  value,
       pressing  return  in the value part of the window will set
       the new value and pop down the menu.

       Pressing the middle mouse  button  on  an  indicator  will
       decrement  the  value  (e.g.  for line thickness) or cycle
       through the options in one direction  (e.g.  font  names),
       while  pressing  the right mouse button will increment the
       value or cycle through the options in the other direction.

       ZOOM SCALE
              The      canvas      zoom      scale     may     be
              set/increased/decreased with this button.  The zoom
              scale  is  displayed within the zoom button. Ruler,
              grid and linewidth are scaled, too.   Pressing  the
              middle  button will decrease the zoom factor by 1.0
              unless it is less than 1.0 already in which case it
              will  reduce  to  the  nearest  0.25.  Pressing the



                   Release 2.1.3 (Protocol 2.1)                 9




XFIG(1)                                                   XFIG(1)


              right button will increase the zoom factor  by  1.0
              unless  it  is  less than 1.0 in which case it will
              increase it to the nearest 0.25.  Pressing the con-
              trol  key  and the right mouse button together will
              set the zoom scale to 1.

              The figure may also be zoomed by  defining  a  zoom
              rectangle  by  pressing  the  control  key and left
              mouse button together.  This will define one corner
              of  the  zoom  rectangle.  Move the mouse and click
              the left button again to define the opposite corner
              of the zoom rectangle.

       GRID MODE
              With  this  button the user may select no grid, 1/4
              inch (5mm in metric mode) grid or 1/2  inch  (10mm)
              grid.

       POINT POSITION
              This  button  controls  the  coarseness  of  object
              placement on the canvas.  The options are arbitrary
              placement, 1/16 inch (2mm in metric mode), 1/4 inch
              (5mm) or 1/2 inch (10mm).  This allows the user  to
              easily  place  objects  in  horizontal  or vertical
              alignment.

              This also restricts which objects  may  be  "picked
              up"  by  the mouse when editing.  If a corner of an
              object is not positioned on the canvas on a  multi-
              ple of the point positioning resolution you may not
              be able to pick  it.   If  this  happens,  a  black
              square will temporarily appear above the mouse cur-
              sor.  This square will also appear anytime the user
              tries to pick a nonexistent object.

       ROTATION ANGLE
              The  rotation  angle  for  rotating  objects may be
              set/increased/decreased  with  this  button.   Note
              that  not  all  objects may be rotated, and certain
              objects may only  be  rotated  by  certain  angles.
              Pressing   the   middle   or   right   button  will
              decrease(increase)  the  angle  in  steps   of   15
              degrees.   To  select  other angles, press the left
              button and enter the angle in the popup menu.

       DEPTH  The depth at which new objects will be created  may
              be set/increased/decreased with this button.

       NUMBER OF POLYGON SIDES
              The  number  of  sides  used  in creating a REGULAR
              POLYGON is set with this button.

       SMART-LINKS MODE
              This button controls the  smart-links  mode.   When



                   Release 2.1.3 (Protocol 2.1)                10




XFIG(1)                                                   XFIG(1)


              turned   on,  lines  which  link  box-like  objects
              together (henceforth called links) are treated spe-
              cially  when  one of the box-like objects is moved.
              When set to MOVE mode, the end point  of  the  link
              which  touches  (or  is very near) the perimeter of
              the box is moved with the box so that the  box  and
              the  end  point  remain  linked.  When set to SLIDE
              mode, the end segment of the link  slides  so  that
              the  box  remains  linked  and the angle of the end
              segment is maintained.  This is useful for  keeping
              the  last segment of a link horizontal or vertical.

              (At the moment, this mode only works for  the  MOVE
              and  COPY  functions  and  only  works for POLYLINE
              links and box-like objects.  Another limitation  at
              the moment is that if both ends of a link touch the
              box being operated on, only one  end  of  the  link
              will be adjusted.)

       VERTICAL ALIGN
              This sets the vertical alignment mode for the ALIGN
              button in the editing mode panel.  The choices  are
              no vertical alignment, align to top edge, middle or
              bottom edge of compound.  The HORIZONTAL ALIGN  and
              VERTICAL ALIGN indicator settings are used together
              to align objects inside a compound.

       HORIZONTAL ALIGN
              This sets the horizontal  alignment  mode  for  the
              ALIGN  button  in  the  editing  mode  panel.   The
              choices are no horizontal alignment, align to  left
              edge,  middle or right edge of compound.  The HORI-
              ZONTAL ALIGN and VERTICAL ALIGN indicator  settings
              are  used  together  to align objects inside a com-
              pound.

       ANGLE GEOMETRY
              The following settings are  available  to  restrict
              the  drawing  angle  of line segments in POLYLINES,
                   POLYGONS and SPLINES.

            UNRESTRICTED
                   Allow lines to be drawn with any slope.

            LATEX LINE
                   Allow lines to be drawn only at slopes which can be
                   handled by LaTeX picture environment lines: slope =
                   x/y, where x,y are integers in the range [-6,6].

            LATEX VECTOR
                   Allow lines to be drawn only at slopes which can be
                   handled by LaTeX picture environment vectors: slope
                   = x/y, where x,y are integers in the range  [-4,4].




                        Release 2.1.3 (Protocol 2.1)                11




     XFIG(1)                                                   XFIG(1)


            MANHATTAN-MOUNTAIN
                   Allow lines to be drawn in the horizontal, vertical
                   or diagonal direction only.

            MANHATTAN
                   Enforce drawing of lines in the horizontal and ver-
                   tical direction only.

            MOUNTAIN
                   Enforce drawing of only diagonal lines.


       FILL STYLE
              This button allows the user to select the area fill
              darkness (grey scale) for all objects  except  TEXT
              and  ENCAPSULATED  POSTSCRIPT,  or to turn off area
              fill altogether.

       COLOR  The user may select one of eight predefined  colors
              to  draw  with,  or  select  that the default (-fg)
              color is to be used.  The eight colors  are  black,
              blue,  green, cyan, red, magenta, yellow and white.
              Note that TransFig versions 2.1.4 and later support
              color output for PostScript.  On monochrome screens
              the objects are created with  the  selected  color,
              but  black  is used to draw the objects on the can-
              vas.

       LINE WIDTH
              The width of lines may be selected with  this  but-
              ton.  Zero width lines may be drawn for the purpose
              of having filled areas without outlines.

       LINE STYLE
              The choices for line style are  solid,  dashed  and
              dotted.   Once created, a dashed or dotted line may
              be edited to change the length  of  dashes  or  the
              spacing  of dots respectively.  The dash length and
              dot gap can be changed from the default  using  the
              popup menu.

       BOX CURVE
              The radius of the corners on ARC-BOX objects may be
              set with this button.

       ARROW MODE
              This button selects the auto-arrow mode for drawing
              lines.   The  options are no arrow heads, backward-
              pointing arrow head, forward-pointing arrow head or
              both.   If  one or both arrow head modes are turned
              on, then arrow heads are automatically  drawn  when
              drawing POLYLINE, SPLINE or ARC objects.





                   Release 2.1.3 (Protocol 2.1)                12




XFIG(1)                                                   XFIG(1)


       TEXT JUSTIFICATION
              The  adjustment  of text may be set to left, center
              or right justification.

       TEXT SIZE
              The text size may be  set/increased/decreased  with
              this button.

       TEXT STEP
              The    interline    spacing    of   text   may   be
              set/increased/decreased with this button.  The num-
              ber displayed gives the multiple of the font height
              that  will  be  placed  between  lines  on  hitting
              <return>.

       TEXT FONT
              This  button  allows a selection of 35 fonts avail-
              able for most Apple PostScript printers.  There are
              two  buttons  at  the  top of the menu.  The cancel
              button pops down the menu without changing the cur-
              rent  font.   The  use  latex fonts will switch the
              menu to the LaTeX font  choices.   When  the  LaTeX
              font menu is up, besides a cancel button there is a
              button to switch back to the PostScript fonts.

              The name of the font is printed in the font  itself
              so  that one may see what that font looks like.  If
              a corresponding X11 font exists, new text  is  cre-
              ated  on the canvas using that font.  xfig uses the
              size of X11 font closest to that  selected  by  the
              font  size  button.  If the X11 font doesn't exist,
              xfig  uses  the  font  selected  by  the  "-normal"
              option.   To  abort  selection of a font, click the
              left mouse button on cancel.


DRAWING AND EDITING MODE PANELS
       Icons in the drawing and editing mode panel windows repre-
       sent  object manipulation functions, modes and other draw-
       ing or  modification  aids.   Manipulation  functions  are
       selected  by  positioning  the cursor over it and clicking
       the left mouse button.  The selected icon is  highlighted,
       and  a message describing its function appears in the mes-
       sage window.

DRAWING MODE PANEL COMMAND DESCRIPTIONS
       The drawing mode panel contains buttons used to create the
       various  xfig objects.  Once the drawing mode is selected,
       the object is created by moving the mouse to the point  on
       the  canvas  where the object is to be placed and pressing
       and releasing the left button.  After that  the  mouse  is
       moved  to  the  second  point and the left button is again
       pressed for the next point.  For those objects  which  may
       have  more  than two points (e.g. a line), the left button



                   Release 2.1.3 (Protocol 2.1)                13




XFIG(1)                                                   XFIG(1)


       may be pressed for each successive point, and  the  middle
       button  must be pressed to finish the object.  To create a
       single point using the POLYLINE button, press and  release
       the  middle  button.   For  the ARC object, which requires
       exactly three points the left button is used for all three
       points.

       At  any time the right button may be pressed to cancel the
       creation of the object.

       ARC    Create an arc.  Specify three points using the left
              button.

       BOX    Create  rectangular  boxes.   Start and finish with
              the left button.

       ARC-BOX
              Create  rectangular  boxes  with  rounded  corners.
              Start  and finish with the left button.  The radius
              of the corners is selected by the BOX CURVE button.

       CIRCLE Create  circles by specifying their radii or diame-
              ters.  Click the left button on the center  of  the
              circle  and drag the mouse until the desired radius
              or diameter is attained.   Click  the  left  button
              again to finish the circle.

       ELLIPSE
              Create ellipses using the same procedure as for the
              drawing of circles.

       ENCAPSULATED POSTSCRIPT OBJECT (EPS)
              Click the left button on either the  upper-left  or
              lower-right corner for the EPS object and finish by
              clicking the left button again on the opposite cor-
              ner.  The EDIT popup panel will appear and the file
              name of the  EPS  object  may  be  entered.   After
              pressing  DONE  or APPLY the bitmap part of the EPS
              object will appear in the box just created.  If  no
              EPS  file is available yet or no name is entered or
              there is no preview bitmap in the EPS file,  press-
              ing  DONE will pop down the edit panel and the word
              <empty> or the EPS file name will remain in the EPS
              box.  Later, when the name of the EPS file is known
              or the file is available, you may re-read  the  EPS
              file using the popup edit panel and the bitmap part
              of the EPS file will replace the name in the box.
              If you want the original size of  the  EPS  object,
              press the "Use orig size" button and the eps bitmap
              will enlarge or shrink to the size specified in the
              preview  bitmap  of  the EPS file.  If you want the
              EPS object to be  approximately  the  size  of  the
              rectangle  specified  with  the  mouse but want the
              aspect ratio to be  same  as  the  original,  press



                   Release 2.1.3 (Protocol 2.1)                14




XFIG(1)                                                   XFIG(1)


              either  "Shrink  to orig" or "Enlarge to orig" but-
              tons.  You must press the APPLY button to see these
              effects.

       INTERPOLATED SPLINE
              Create  (cubic  spline) spline objects.  Enter con-
              trol vectors in the same way as for creation  of  a
              POLYLINE  object.   At least three points (two con-
              trol vectors) must be  entered.   The  spline  will
              pass through the entered points.

       POLYLINE
              Create   polylines   (line  segments  connecting  a
              sequence of points).  Enter points by clicking  the
              left  button at the desired positions on the canvas
              window.  Click the middle button to finish.

       POLYGON
              Same as POLYLINE except  that  a  line  segment  is
              drawn connecting the first and last points entered.

       REGULAR POLYGON
              The number of sides is first selected with the  NUM
              SIDES button in the indicator panel.  Then the left
              button is clicked  on  the  center  and  the  mouse
              dragged  to  the  desired  size.  The object may be
              rotated as it is being created by moving the  mouse
              up  or  down relative to the starting point.  Click
              the left button to finish.

       CLOSED INTERPOLATED SPLINE
              Create closed or periodic splines.  The function is
              similar  to  POLYGON  except that a closed interpo-
              lated  spline  is  drawn.   The  spline  will  pass
              through the points (knots).

       CLOSED SPLINE
              Create  closed  or  periodic  spline  objects.  The
              function is similar to POLYGON except that a closed
              spline  will  be  drawn  instead  of  polygon.  The
              entered points are just control points;  i.e.,  the
              spline will not pass any of these points.

       SPLINE Create  (quadratic  spline)  spline objects.  Enter
              control vectors in the same way as for creation  of
              a POLYLINE object.  At least three points (two con-
              trol vectors) must be  entered.   The  spline  will
              only pass through the two end points.

       TEXT   Create  text  strings. Click the left button at the
              desired position on the canvas window,  then  enter
              text  from  the  keyboard.  Text may be pasted from
              the PRIMARY cut buffer (xterm cut/paste buffer)  by
              pressing F18 function key or any key/button defined



                   Release 2.1.3 (Protocol 2.1)                15




XFIG(1)                                                   XFIG(1)


              in the translation table for the canvas.   See  the
              default  Fig.ad  file  for  example.  Text is drawn
              using the current font, font size and justification
              settings.   A  DEL  or ^H (backspace) will delete a
              character, while a ^X will erase the  entire  line.
              Finish  by clicking the middle button or typing the
              <return>  key.   If  <return>  is  used,  the  text
              pointer  automatically  moves to the next "line", a
              distance of the font height times the value in  the
              TEXT  STEP  button,  and  text  input  mode  is re-
              entered.  To finish text fully,  click  the  middle
              button  or  choose  any  panel  button that changes
              modes (e.g. box, save, etc).  To edit  text,  click
              on  an  existing  text string with the left button.
              Insertion of characters will  take  place  at  that
              point.   Or,  use the popup EDIT mode to modify the
              text.

              Eight-bit characters may be entered using the  meta
              (compose)  key.   For  example,  to  create  an  "a
              umlaut", hold down the meta key while pressing  the
              letter  "a",  then press " (quote).  To create a "c
              cedilla", use <meta>c followed by comma.  The  fol-
              lowing  is  a list of all special characters avail-
              able using the meta key:

              Keys Character Name

              !!   upside-down exclamation point
              ??   upside-down question mark
              C/   cent sign
              L-   British pound
              OX   currency
              Y-   yen
              __   broken vertical bar
              SO   section
              ""   dieresis
              CO   copyright
              RO   registered trademark
              _a   ordfeminine
              _o   ordmasculine
              <<   guillemotleft
              >>   guillemotright
              -|   notsign
              --   hyphen
              +-   plusminus
              ^-   macron
              ^*   degree
              ^.   periodcentered
              ^1   onesuperior
              ^2   twosuperior
              ^3   threesuperior
              14   onequarter
              12   onehalf



                   Release 2.1.3 (Protocol 2.1)                16




XFIG(1)                                                   XFIG(1)


              34   threequarters
              \    acute
              **   multiply
              -:   division
              /u   mu
              P!   paragraph
              A`   A accent grave
              A'   A accent acute
              A^   A accent circumflex
              A~   A accent tilde
              A"   A dieresis
              A*   A ring
              AE   AE
              a`   a accent grave
              a'   a accent acute
              a^   a accent circumflex
              a~   a accent tilde
              a"   a dieresis
              a*   a ring
              ae   ae
              C,   C cedilla
              c,   c cedilla
              D-   Eth
              d-   eth
              E`   E accent grave
              E'   E accent acute
              E^   E accent circumflex
              E"   E dieresis
              e`   e accent grave
              e'   e accent acute
              e^   e accent circumflex
              e"   e dieresis
              I`   I accent grave
              I'   I accent acute
              I^   I accent circumflex
              I"   I accent dieresis
              i`   i accent grave
              i'   i accent acute
              i^   i accent circumflex
              i"   i dieresis
              N~   N tilde
              n~   n tilde
              O`   O accent grave
              O'   O accent acute
              O^   O accent circumflex
              O~   O accent tilde
              O"   O dieresis
              O/   O slash
              o`   o accent grave
              o/   o accent acute
              o^   o accent circumflex
              o~   o accent tilde
              o"   o dieresis
              o/   o slash



                   Release 2.1.3 (Protocol 2.1)                17




XFIG(1)                                                   XFIG(1)


              P|   Thorn
              p|   thorn
              ss   German ss (s-zed)
              U`   U accent grave
              U'   U accent acute
              U^   U accent circumflex
              U"   U dieresis
              u`   u accent grave
              u'   u accent acute
              u^   u accent circumflex
              u"   u dieresis
              Y'   Y accent acute
              y'   y accent acute
              y"   y dieresis


EDITING MODE PANEL COMMAND DESCRIPTIONS
       When a button in the editing mode panel  is  pressed,  any
       objects  that  may  be  affected by that editing operation
       will show their corner markers.  Only those objects may be
       affected  by the particular edit mode.  In cases where two
       edit modes exist for one button, it may be that the corner
       markers  will  appear  for objects that may be affected by
       one button but not the other.


       SELECTING OBJECTS
              When multiple objects have points in  common,  e.g.
              two boxes that touch at one corner, only one object
              can be selected  by  clicking  on  that  point.  To
              select other objects, hold down the shift key while
              pressing the left mouse button: the markers of  one
              object will be temporarily highlighted.  By repeat-
              edly clicking the left button  while  holding  down
              the  shift key, it is possible to cycle through all
              candidates for selection at that point. To  perform
              the  selected action, e.g.  deleting one box, click
              on the point without holding down  the  shift  key.
              The  operation will be performed on the highlighted
              object.

              Note: If the mouse is not clicked near enough to an
              object  marker  or  for whatever reason xfig cannot
              "find" the object the user is trying to  select,  a
              black  square  will  temporarily  appear  above the
              mouse cursor.

       GLUE COMPOUND
              Compound objects are created by first  tagging  the
              objects  to  be  compounded  and  then pressing the
              right mouse button to group the tagged objects into
              a  compound  object.   Single objects are tagged by
              clicking on them with the left button.  A number of
              objects  can  be tagged at once by using the middle



                   Release 2.1.3 (Protocol 2.1)                18




XFIG(1)                                                   XFIG(1)


              button to define  the  upper-left  and  lower-right
              corners  of a region enclosing the objects.  Tagged
              objects are shown with highlighted markers.  Tagged
              objects  which  are  selected  (see  the  SELECTING
              OBJECTS section above) will be temporarily  unhigh-
              lighted.   There is currently no special command to
              tag or untag all of the objects  within  a  figure.
              You  can  untag all of the objects by changing from
              GLUE mode to some other mode (apart from BREAK) and
              back again.

       BREAK COMPOUND
              Break  a  compound  object to allow manipulation of
              its component parts.  Click the left button on  the
              one of the corner markers of the compound object or
              along one of the imaginary lines defining the  com-
              pound  box.   Clicking  with the middle button will
              achieve the same effect but will also tag the  com-
              ponent  parts  (although  you will not see the tags
              until you change to the GLUE mode).   You  can  use
              this  feature  to easily alter the objects within a
              compound.

       SCALE OBJECT
              Any object may be scaled.  If the  left  button  is
              pressed  on  a  BOX  or  ARC-BOX  object, then that
              object will be scaled proportionally to its  aspect
              ratio.   If  the  middle  button  is pressed on any
              object, that object will be scaled up or down about
              its  center.   Text  may only be scaled if inside a
              compound object and then only if its RIGID flag  is
              set  to  NORMAL  (using the popup edit panel).  See
              the  TransFig  manual  for  description   of   text
              options.

       ALIGN  This  button  will  align objects inside a compound
              object according to the  setting  in  the  VERTICAL
              ALIGN and HORIZONTAL ALIGN indicators.  The choices
              are the cumulative effect  of  vertically  aligning
              the  objects  to the TOP, MIDDLE or BOTTOM edge and
              horizontally aligning to the LEFT, MIDDLE or  RIGHT
              edge of the compound.

       MOVE POINT
              Modify the position of a point of any object except
              TEXT and COMPOUND objects.  For unrestrained  move-
              ment, click the left button over the desired point,
              reposition the point, and  click  the  left  button
              again.   For horizontally or vertically constrained
              move, click the middle button on the desired  point
              and move either horizontally or vertically.  Notice
              that once you choose the direction  (horizontal  or
              vertical),  movement  is constrained in that direc-
              tion.  If, after moving the mouse initially, it  is



                   Release 2.1.3 (Protocol 2.1)                19




XFIG(1)                                                   XFIG(1)


              moved  in  the  other  direction a greater distance
              than the current position of the mouse relative  to
              the  starting point, then that will be the new con-
              straint direction.  In otherwords if you first move
              the  mouse horizontally one inch (say) then move it
              vertically 1.3 inches, the direction will switch to
              vertical  until  any  horizontal motion exceeds 1.3
              inches.   When  the  object  is  positioned   where
              desired,  click  the  left  to place it if the left
              button was used to start the move  (unconstrained),
              or  the  middle button (constrained) if that button
              was used.

       MOVE   Move object.  Click the left  (unconstrained  move)
              or  middle  (constrained move) button on any corner
              marker of the object to  be  moved.   The  horizon-
              tal/vertical  constrained  movement (middle button)
              works exactly as described for MOVE POINT.

       ADD POINTS
              Add points to POLYLINE, POLYGON, SPLINE, or  CLOSED
              SPLINE objects (points of a BOX can not be added or
              deleted).  Note that a REGULAR POLYGON is really an
              ordinary  POLYGON,  so adding points to this object
              is allowed and does NOT keep the polygon regular.

       COPY / CUT TO CUT BUFFER
              Copy object to canvas or  cut  buffer.   Click  the
              left  (unconstrained  copy)  or middle (constrained
              copy) button on any corner marker of the object  to
              be  copied  (for  CIRCLE and ELLIPSE objects, mouse
              may also be clicked on their circumferences).   The
              object will be duplicated and then moved exactly as
              in MOVE.  If the right  button  is  clicked  on  an
              object, that object is copied to the cut buffer for
              pasting into this or another figure.  The file used
              for  the  cut  buffer is called .xfig in the user's
              $HOME directory.  This allows a user to run two  or
              more  xfig  processes and cut/paste objects between
              them.  If there is no $HOME, a file is  created  in
              /tmp,  called xfigPID where PID is the xfig process
              ID.

       DELETE POINTS
              Delete points from POLYLINE,  POLYGON,  SPLINE,  or
              CLOSED SPLINE.  Objects (points of a BOX or ARC-BOX
              can not be added or deleted).  Note that a  REGULAR
              POLYGON  is really an ordinary POLYGON, so deleting
              points from this object is  allowed  and  does  NOT
              keep the polygon regular.

       DELETE Click  the  left  button on an object to delete the
              object.  Delete a region of the canvas by  clicking
              the  middle button and dragging the mouse to define



                   Release 2.1.3 (Protocol 2.1)                20




XFIG(1)                                                   XFIG(1)


              an area of objects to delete.  Clicking  the  right
              button on an object will copy the object to the cut
              buffer (see COPY/CUT TO CUT BUFFER above).

       EDIT OBJECT
              Edit settings for an existing  object.   Click  the
              left  button  on  the object and a pop-up menu will
              appear showing existing settings  for  the  object.
              Some  of  the menu entries may be changed by typing
              new values in the appropriate  windows.  These  are
              editable  AsciiTextWidgets and allow cut and paste.
              Others pop up a sub-menu of multiple  choices  when
              pressed and held.  Press the "done" button to apply
              the changes to the object and  finish.   Press  the
              "apply"  button  to  apply the changes but keep the
              menu up for further changes.   Press  the  "cancel"
              button to cancel the changes and pop down the menu.

              The following table shows which settings  are  used
              for the different objects.

      Object         Angle Area  Line  Line  Box  Depth Color Radius Text Font/
                           Fill Width Style Curve                    Just./Size
      --------------------------------------------------------------------------
      Arc                    X    X     X           X     X
      --------------------------------------------------------------------------
      Arc-Box                X    X     X     X     X     X
      --------------------------------------------------------------------------
      Circle           X     X    X     X           X     X      X
      --------------------------------------------------------------------------
      Ellipse          X     X    X     X           X     X      X
      --------------------------------------------------------------------------
      EPS                                           X     X
      --------------------------------------------------------------------------
      Box,Polygon,     X     X    X           X     X
      Line,Spline
      --------------------------------------------------------------------------
      Text             X                            X     X               X
      --------------------------------------------------------------------------

        The angle may be set, but the object will only be rotated
       on PostScript output.

        The depth defines how overlapping objects are  displayed.
       Objects  with  a  greater  depth  value  are obstructed by
       objects with  smaller  depth  value.   The  maximum  depth
       allowed is 1000.


       UPDATE By  pressing the left button on an object, the cur-
              rent  settings  for  the  indicator  buttons  (line
              width,  line style, area fill etc.) which have been
              selected for update are copied  into  that  object.
              When  xfig  is started, all indicator buttons which



                   Release 2.1.3 (Protocol 2.1)                21




XFIG(1)                                                   XFIG(1)


              are components of objects are selected for  update.
              To  unselect an indicator, click on the update but-
              ton and click the left mouse button  on  the  small
              button  in the upper-right corner of the indicator.
              When that  indicator  is  selected  the  foreground
              color (default black) shows.  When it is unselected
              the background color (default white) shows.

              If the middle button is clicked on an  object,  the
              settings  in  the  object  that are selected by the
              indicator buttons are copied into  those  indicator
              button  settings.   Thus,  one  may  copy  selected
              attributes of one object to another.

       FLIP VERTICALLY
              Flip the object up/down (left button) or  copy  the
              object  and  flip it (middle button). Point to part
              of the object, click the appropriate button.   That
              object will be flipped vertically about that point.

       FLIP HORIZONTALLY
              Flip the object left/right (left  button)  or  copy
              the  object  and  flip it (middle button). Point to
              part of the object, click the  appropriate  button.
              That object will be flipped horizontally about that
              point.

       ROTATE CLOCKWISE
              Rotate the object (left button) or copy and  rotate
              it  (middle button) -N degrees (clockwise), where N
              is the amount set in the rotation indicator button.
              The  object is rotated about the chosen point.  Not
              all objects can be rotated,  and  not  all  can  be
              rotated  at  arbitrary  angles.   For example, BOX,
              ARC-BOX and EPS objects may only be rotated  by  90
              degrees.  Text objects may be rotated although only
              the markers are rotated on the screen, but the text
              itself is not displayed rotated because of the lim-
              itations of the X11 Window System.  Text IS rotated
              correctly on PostScript output, however.

       ROTATE COUNTER-CLOCKWISE
              Rotate  the  object  (left  button) or copy (middle
              button) +N degrees (counter-clockwise), where N  is
              the  amount  set  in the rotation indicator button.
              The object is rotated about the chosen point.

       SPLINE <-> POLYLINE
              Turn POLYGON  into  a  CLOSED  INTERPOLATED  SPLINE
              object, or turn POLYLINE into a INTERPOLATED SPLINE
              object.

       ADD/DELETE ARROWS
              Add or delete  arrow  heads  of  ARC,  POLYLINE  or



                   Release 2.1.3 (Protocol 2.1)                22




XFIG(1)                                                   XFIG(1)


              SPLINE  objects.  Add an arrow head by clicking the
              left button on the endpoint of the object.   Delete
              an arrow head by clicking middle button on the end-
              point or arrow head.

PANNING
       The figure may be panned by clicking the left,  middle  or
       right  mouse button in the rulers.  Clicking the left but-
       ton in the top ruler will pan the image to left the by 1/2
       inch  (1cm  in  metric  mode),  adjusted  for zoom factor.
       Clicking the right button in the top ruler  will  pan  the
       image  right  by the same amount.  By pressing and holding
       the middle button the user  may  drag  the  ruler  by  the
       amount desired, thus panning the image by that amount.

       The figure is panned up and down in the same way by click-
       ing the mouse in the ruler on the  right  of  the  canvas.
       Also, the figure can be returned to its origin by clicking
       the left mouse button in the units (e.g. cm or in) box.

       The arrow keys may also be used to pan the image  and  the
       home key to return the figure to the origin.  Also, press-
       ing the Control Key and the middle mouse button  will  pan
       the figure to the origin.


X DEFAULTS
       The   overall  widget  name(Class)  is  xfig(Fig).   These
       resources correspond to the command line arguments:

       Name                Class               Type    Default     Command-line
                                                                   equivalent
       ---------------------------------------------------------------------------------
       justify             Justify             boolean false       -left (false) and
                                                                      -right (true)
       landscape           Orientation         boolean true        -Landscape and
                                                                      -Portrait
       pwidth              Width               integer 10(8)       -pwidth
       pheight             Height              integer 8(9.5)      -pheight
       trackCursor         Track               boolean on          -track and -notrack
       inches              Inches              boolean true        -inches, -imperial,
                                                                      -centimeters and
                                                                      -metric
       reverseVideo        ReverseVideo        boolean off         -inverse
       debug               Debug               boolean off         -debug
       latexfonts          Latexfonts          boolean off         -latexfonts
       normalFont          NormalFont          string  fixed       -normal
       boldFont            ButtonFont          string  8x13bold    -bold
       startfontsize       StartFontSize       integer 12          -startfontsize
       startpsFont         StartpsFont         string  Times-Roman -startpsFont
       startlatexFont      StartlatexFont      string  Default     -startlatexFont
       showallbuttons      ShowAllButtons      boolean false       -showallbuttons
       internalborderwidth InternalBorderWidth integer 1           -internalBW




                   Release 2.1.3 (Protocol 2.1)                23




XFIG(1)                                                   XFIG(1)


       scalablefonts       ScalableFonts       boolean false       -scalablefonts
       monochrome          Monochrome          boolean false       -monochrome
       keyFile             KeyFile             string  CompKeyDB   -keyFile
       color0              Color0              pixel   black
       color1              Color1              pixel   blue
       color2              Color2              pixel   green
       color3              Color3              pixel   cyan
       color4              Color4              pixel   red
       color5              Color5              pixel   magenta
       color6              Color6              pixel   yellow
       color7              Color7              pixel   white
       ---------------------------------------------------------------------------------

WIDGET TREE
       Below is the widget structure of xfig.  The  widget  class
       name is given first, followed by the widget instance name.

       Fig  xfig
            Form  form
                 Form  commands
                 Label  message
                      Command  button (one for each of the 8 buttons)
                 Label  mouse_panel
                 Box  mode_panel
                      Label  label
                      Command  button (one for each of the 16 drawing mode buttons)
                      Label  label
                      Command  button (one for each of the 18 editing mode buttons)
                 Label  topruler
                 Label  canvas
                 Label  unitbox
                 Label  sideruler
                 Box  ind_panel
                      Form  button_form
                           Command  button (one for each of the 20 indicator buttons)
                           Toggle  update (some have update buttons, some don't)

                 TransientShell  xfig_ps_font_menu
                      Box  menu
                           Form  buttons
                                Command  cancel
                                Command  use_latex_fonts
                           Command  pane (one for each of the 35 Postscript font panes)

                 TransientShell  xfig_latex_font_menu
                      Box  menu
                           Form  buttons
                                Command  cancel
                                Command  use_postscript_fonts
                           Command  pane (one for each of the 6 LaTeX font panes)

            TransientShell  xfig_file_msg
                 Form  file_msg_panel
                      Text  file_msg_win



                   Release 2.1.3 (Protocol 2.1)                24




XFIG(1)                                                   XFIG(1)


                      Command  dismiss

            TransientShell  xfig_file_menu
                 Form  file_panel
                      Label  file_status
                      Label  num_objects
                      Label  file_label
                      Text  file_name
                      Label  filename
                      Viewport  vport
                           Core  clip
                           List  file_list_panel
                      Label  mask_label
                      Text  mask
                      Label  dir_label
                      Text  dir_name
                      Label  dir_alt_label
                      Command home
                      Viewport  dirvport
                           Core  clip
                           List  dir_list_panel
                      Command  rescan
                      Command  cancel
                      Command  save
                      Command  load
                      Command  merge

            TransientShell  xfig_export_menu
                 Form  export_panel
                      Label  mag_label
                      Text  magnification
                      Label  orient_label
                      MenuButton  landscape
                           SimpleMenu  menu
                                SmeBSB  portrait
                                SmeBSB  landscape
                      Label  just_label
                      MenuButton  justify
                           SimpleMenu  menu
                                SmeBSB  flush left
                                SmeBSB  centered
                      Label  lang_label
                      MenuButton  eps
                           SimpleMenu  menu
                                SmeBSB  box
                                SmeBSB  epic
                                SmeBSB  eepic
                                SmeBSB  eepicemu
                                SmeBSB  latex
                                SmeBSB  null
                                SmeBSB  pic
                                SmeBSB  pictex
                                SmeBSB  eps
                                SmeBSB  ps



                   Release 2.1.3 (Protocol 2.1)                25




XFIG(1)                                                   XFIG(1)


                                SmeBSB  pstex
                                SmeBSB  pstex_t
                                SmeBSB  textyl
                                SmeBSB  tpic
                                SmeBSB  Xbitmap
                      Label  def_file_label
                      Label  def_file_name
                      Label  out_file_name
                      Text  file
                      Label  filename
                      Viewport  vport
                           Core  clip
                           List  file_list_panel
                           Scrollbar  vertical
                      Label  mask_label
                      Text  mask
                      Label  dir_label
                      Text  dir_name
                      Label  dir_alt_label
                      Command home
                      Viewport  dirvport
                           Core  clip
                           List  dir_list_panel
                      Command  rescan
                      Command  cancel
                      Command  export

            TransientShell  xfig_print_menu
                 Form  print_panel
                      Label  printer_image
                      Label  mag_label
                      Text  magnification
                      Label  orient_label
                      MenuButton  landscape
                           SimpleMenu  menu
                                SmeBSB  portrait
                                SmeBSB  landscape
                      Label  just_label
                      MenuButton  justify
                           SimpleMenu  menu
                                SmeBSB  flush left
                                SmeBSB  centered
                      Label  dir_label
                      Text  printer
                      Command  cancel
                      Command  print

            NOTE:  The following is a typical popup edit panel (for ARC-BOX)
                   The panel will be different for other objects.

            TransientShell  xfig_edit_panel
                 Form  form
                      Label  POLYLINE:ArcBox
                      Label  image



                   Release 2.1.3 (Protocol 2.1)                26




XFIG(1)                                                   XFIG(1)


                      Command  done
                      Command  apply
                      Command  cancel
                      Label
                      Label  Width =
                      Text  Width =
                      Label  Color =
                      Text  Color =
                      Label  Depth =
                      Text  Depth =
                      Label  Area fill =
                      MenuButton  No fill
                           SimpleMenu  menu
                                SmeBSB  No fill
                                SmeBSB  Filled
                      Label  Fill density % =
                      Text  Fill density % =
                      Label  Line style =
                      MenuButton  Solid Line
                           SimpleMenu  menu
                                SmeBSB  Solid Line
                                SmeBSB  Dashed Line
                                SmeBSB  Dotted Line
                      Label  Dash length/Dot gap =
                      Text  Dash length/Dot gap =
                      Label  Top Left:
                      Label  Top Left:
                      Text  Top Left:
                      Label  Top Left:
                      Text  Top Left:
                      Label  Bottom Right:
                      Label  Bottom Right:
                      Text  Bottom Right:
                      Label  Bottom Right:
                      Text  Bottom Right:
                      Label  Radius =
                      Text  Radius =

BUGS and RESTRICTIONS
       Please send bug reports, fixes, new features etc. to:
       bvsmith@lbl.gov (Brian V. Smith)

       Not all operations employ smart redrawing of objects which
       are  altered  as  a  by product of the operation.  You may
       need to use Redraw in these cases.

       Must compile xfig with -DOPENWIN in  order  to  make  xfig
       handle OpenWindows scalable fonts correctly.

       There is a bug in OpenWindows 2.0 which relates to pixmaps
       in widgets.  You must compile xfig with the  -DOPENWINBUG
       option for this problem.

       If  the  image  is panned or the xfig window iconified and



                   Release 2.1.3 (Protocol 2.1)                27




XFIG(1)                                                   XFIG(1)


       de-iconified during the middle of an operation (e.g. while
       drawing  a line), the picture will be distorted.  This can
       be corrected using Redraw after the operation is complete.

       Rotated text, circles and ellipses will be displayed hori-
       zontally on the screen.  They will be  rotated  only  when
       printed on PostScript output.

       Corners  of object scaled with point positioning in one of
       the grid modes will not always fall on the grid line,  but
       to the closest pixel.

SEE ALSO
       Brian  W. Kernighan PIC - A Graphics Language for Typeset-
       ting User Manual
       fig2dev(1) (TransFig package)

ACKNOWLEDGEMENT
       Many thanks  goes  to  Professor  Donald  E.  Fussell  who
       inspired the creation of this tool.

COPYRIGHT
       Original Copyright (c) 1985 by Supoj Sutanthavibul

       Permission to use, copy, modify, distribute, and sell this
       software and its documentation for any purpose  is  hereby
       granted  without  fee,  provided  that the above copyright
       notice appear in all copies and that both  that  copyright
       notice  and  this  permission  notice appear in supporting
       documentation, and that the name of M.I.T. not be used  in
       advertising or publicity pertaining to distribution of the
       software  without  specific,  written  prior   permission.
       M.I.T.  makes  no representations about the suitability of
       this software for any purpose.  It  is  provided  "as  is"
       without express or implied warranty.

       PostScript is a trademark of Adobe Systems Incorporated.

FILES
       CompKeyDB  - Data base of compose key sequences for 8-bit
              charac- ters.
              Must  be  installed  in  $(XFIGLIBDIR)  with  'make
              install'.  See the Imakefile.

       Doc/FORMAT2.1 - Description of Fig file format.

       CHANGES - Description of bug fixes/new features.

AUTHORS
       Many people have contributed to xfig.  Here is a  list  of
       the people who have contributed the most:

       Original author:
       Supoj Sutanthavibul, University of Texas at Austin



                   Release 2.1.3 (Protocol 2.1)                28




XFIG(1)                                                   XFIG(1)


       The LaTeX line drawing modes were contributed by:
       Frank          Schmuck,         Cornell         University
       (schmuck@svax.cs.cornell.edu)

       Original X11 port by:
       Ken Yap, Rochester (ken@cs.rochester.edu)

       Variable window sizes, cleanup of  X11  port,  right  hand
       side panel:
       Dana Chee, Bellcore (dana@bellcore.com)

       Cleanup of color port to X11 by:
       John T. Kohl, MIT (jtkohl@athena.mit.edu)

       Area  fill,  multiple line thicknesses, multiple fonts and
       font sizes, bottom panel, line  style/thickness  modifica-
       tion of objects by:
       Brian V. Smith, Lawrence Berkeley Laboratory
       (standard disclaimer applies)
       (bvsmith@lbl.gov)

       Popup change-object menu by:
       Jon   Tombs  (jon%robots.oxford.ac.uk@nsfnet-relay.ac.uk),
       and
       Frank Schmuck (schmuck@svax.cs.cornell.edu)

       Zooming and panning functions, shift key select  mechanism
       by:
       Dieter   Pellkofer  (dip@regent.e-technik.tu-muenchen.de),
       and
       Henning Spruth (hns@regent.e-technik.tu-muenchen.de)

       Depth feature by:
       Mike Lutz (mjl@cs.rit.edu)

       Version 2.1 extensive modifications: Indicator panel, file
       menu  popup,  print menu popup, panning with rulers, mouse
       function window, regular polygon,  rubberbanding  of  cir-
       cles/ellipses,  filled  splines  on  canvas, dashed/dotted
       splines on canvas, update button, arbitrary angle rotation
       of  objects,  alignment  in compound, object scaling, con-
       strained copy/move, corner markers for  compound,  context
       sensitive  corner  markers,  smarter redraw, undo for com-
       pound and point move for boxes,  cancel  object  creation,
       point  positioning to three resolutions, TransFig scalable
       text, hidden text, special text, save of figure  on  crash
       by:

       Paul King (king@cs.uq.oz.au)
       with help from:
       Brian   V.   Smith   (bvsmith@lbl.gov)   and   Micah  Beck
       (beck@cs.cornell.edu)

       Encapsulated PostScript importing by:



                   Release 2.1.3 (Protocol 2.1)                29




XFIG(1)                                                   XFIG(1)


       Brian Boyter (root@fstc-chville.army.mil)

       Color implementation and pan/zoom with ctrl key/mouse by:
       Henning Spruth (hns@regent.e-technik.tu-muenchen.de)

       International characters by:
       Herver Soulard (soulard@corto.inria.fr)

       Directory Browser based on XDir by:
       Win     Treese,     Digital     Equipment      Corporation
       (treese@crl.dec.com)














































                   Release 2.1.3 (Protocol 2.1)                30


Typewritten Software • bear@typewritten.org • Edmonds, WA 98026