May 29, 2001
Xfig is a menu-driven tool that allows the user to draw and manipulate objects
interactively in an X window. The resulting pictures can be saved, printed
on postscript printers or converted to a variety of other formats (e.g. to
allow inclusion in LaTeX documents).
xfig 3.2.3d is available from
ftp://www-epb.lbl.gov/xfig and usually from any CTAN
(Comprehensive TeX Archive Network) site such as
ftp://ftp.cdrom.com/pub/tex/ctan/.
See
http://math.nmu.edu/Web/TeXArchives/ctansite.html for a long list of CTAN sites.
Be sure to set binary mode when transferring.
These are the files:
xfig.3.2.3d.full.tar.gz tar file with everything
xfig.3.2.3d.code_only.tar.gz tar file with source only
xfig.3.2.3d.docs_only.tar.gz tar file with docs only (man pages, html)
xfig.3.2.3d.libraries_only.tar.gz tar file with only Fig Object Libraries
You also need to get TransFig version 3.2.3d. TransFig contains the post-
processor needed by xfig to convert fig files to one of several output formats,
such as PostScript, pic, LaTeX etc. The TransFig package can always be found
at the same site as xfig.
Please send email about any questions/bug fixes/contributions etc. about
TransFig or xfig to
[email protected].
Brian V. Smith
Lawrence Berkeley National Laboratory
I don't speak for LBNL; they don't pay me enough for that.
*****************************************************************************
Following is a description of the CHANGES for 3.2.3d.
NEW FEATURES:
o New Imakefile variable XFIGDOCDIR points to directory for xfig doc
files, which may be different from XFIGLIBDIR
o New aircraft from Carlo Kopp in Examples directory. These may be
reproduced for educational and other non-commercial use only.
o Support for importing PNG image files added
o GIF transparency for imported images honored by fig2dev now
o New option to print only active layers when exporting or printing (see
printing/exporting section in html docs).
o When loading a compressed Fig file that is either read-only, or is on
a read-only file system (e.g. a CDROM), xfig uncompresses it into the
temp directory (env TMPDIR, or /tmp if TMPDIR environvment variable is
undefined).
o New Maps library - currently contains Most Canadian provinces, USA
coast and states, most of the continents and a world outline
World outline map and United States by Steve Eichblatt
(
[email protected])
o I had forgotten to credit Kai-MartinKnaak for his Mechanical_DIN
library of mechanical drawing symbols from July 1998
o New Chemical Process Flowsheet library by Volker Siepmann
(
[email protected])
o New Laptop computer and Ericsson R320 cell phone in Libraries/Computers
from Dirko van Schalkwyk (
[email protected])
o New PMOS FET (Field Effect Transistors) and NMOS FET library objects
in Electrical/Schematic library - from Min Xu (
[email protected])
o New network devices in Networks library from Bill Chimiak:
atmswitch.fig - generic ATM switch
dsu-csu.fig - Digital Service Unit/Channel Service Unit
smartbit.fig - Netcom Smartbit network tester
o New Catalan flag in Flags library from Francesc Burrull i Mestres.
o New office building (office2.fig) in Buildings library from Brian
V. Smith
o New variable PRINTCAP in Imakefile to specify where the printer
capabilities file is (default /etc/printcap)
o New drawing: plan view of house and backyard (Examples/house_plans.fig)
from Scott Gordon (
[email protected]). It may not be used for
profit without express written permission from Scott.
o xfig recalculates the bounds of compound objects read in from the file,
ignoring the bounds values in the file. This makes it easier for Fig
file generators to produce compound objects since they don't have to
know how to calculate the bounds themselves. fig2dev doesn't even use
those values but recalculates them upon reading the file.
o New VA Linux machines in Computers library
from Yazz Atlas (
[email protected])
o Increased maximum number of libraries to 100
o New and improved library object Computers/film_digitizer (and in
Hospital/film_digitizer) from Bill Chimiak
BUGS FIXED:
o New cascaded menu for the Fig object libraries. This reduces the
height of the menu to allow many more libraries, by arranging them
hierarchically. This required writing a subclass of the SmeBSB Athena
widget.
o When browsing libraries or merging figures, identical user colors were
multiply defined
o Fig library objects may use imported images because the absolute path
is forced in those cases
o When modifying an existing centered or right-justified text, pressing
enter moved the cursor to the X position of the beginning of the
string just modified instead of its anchor point
o "Delete Unused" button sensitivity not reset when loading subsequent
Fig files
o If -library_dir (Fig.library_dir resource) pointed to a *file* of Fig
library directories, sub-directories weren't added to library list
o If a bad Fig file was previewed in a library, xfig would display a bad
preview and segfault of the object was selected
o Incorrect dx/dy distance reported when moving object/point
o Better support for Cygwin - Importing eps files changes to the
directory of the file to avoid pathname differences between Windows
and Unix/Linux/etc
From Pierre Humblet
o Can now rotate boxes and arcboxes by -90, -180 and 180 degrees in
addition to 90 degrees
o A compressed .fig file is only uncompressed if the directory is
writable
o When reading a Fig file, if there was a bad object inside a compound,
xfig would discard the entire compound.
o When reading a Fig file, if there was an incomplete or bad object,
the storage wasn't freed in some cases.
o xfig would stop reading a Fig file as soon as it encountered a bad
object
o xfig now uses its own my_strdup() so it will compile on those machines
that don't have strdup()
o "Minitower" computer in Fig object library of computers had an illegal
Fig object
o Typo in Doc/FORMAT3.2 file in the join style descriptions. Round and
bevel values were reversed (correct values: Round = 1, Bevel = 2)
Also, fill pattern list was incomplete and incorrect, and arc subtypes
were switched.
o When cancelling modification of text using text tool, refreshing of
original text wasn't done
o Comments longer than 200 characters caused problems. They may be
unlimited in length now.
o Some functions inconsistently declared static/non-static
o Wasn't allowing negative rotation angle in indicator panel
o Typographical error in xfig.man - resources "canvasBackground" and
"canvasForeground" should be "canvasbackground" and "canvasforeground"
respectively (no uppercase letters)
o Updating objects didn't refresh the updated object correctly if the
bounds changed
o The lengths and lines drawn when "showlengths" is enabled has been
cleaned up to remove detritus left behind
o There was a bug in sizing of imported EPS images. They were too small
by the equivalent of one pixel in width and height. Strangely, this
also affected the background color in some cases.
o When merging or pasting a figure of opposite unit system (metric vs
imperial), xfig used the wrong scale factor.
o If malloc fails when xfig tries to create a Fig object, the null
pointer was subsequently dereferenced
o Objects at MAX_DEPTH (999) were sometimes unaccounted for, meaning
they wouldn't be refreshed in some cases.
o Balloon delay value wasn't visible in Global Settings panel
o When updating depths in a compound, xfig didn't check for depths
exceeding the maximum depth (999)
o Grid calculations didn't coerce types properly, resulting in strange
grid in negative canvas region
o Empty lines in the ~/.xfigrc file were causing xfig to segfault
o Updated fig-format.html to correctly reflect Doc/FORMAT3.2
o If a region was deleted (middle mouse button) and undone, the
recovered objects were invisible except for their grab corners
o If an object was selected from a library while it was still loading
and placed on the canvas after the library finished loading, xfig
would segfault
o When pasting or merging objects, xfig would recompute colors of
already imported pictures in current figure even if merged/pasted
objects didn't contain any pictures
o When scaling a compound containg text, text size may have exceeded
MIN_FONT_SIZE or MAX_FONT_SIZE limits
o Font name list was freed when it shouldn't have been, when using
-noscalablefonts
o Changing depth of an object in the edit panel didn't always update the
depth manager correctly
o Actual message was missing from "Error during ..." export message
o Undefined user color in Libraries/Knitting/Symbols/purl-dash.fig
o Removed unused user colors in various Library symbols
o Bug when merging or pasting figures with user-defined colors.
o No more than 100 points are displayed for polylines, polygons in
popup edit panel to prevent system meltdown. This doesn't affect the
maximum number of points *allowed* in a polygon/polyline, only the
number displayed.
o Quotes around definition of MKDIRHIER should not be there in Imakefile
o Made all references to Xaw header files use #ifdef Xaw3d to include
3d header files
o Added back requirement that fonts (except Zapf Dingbats and Symbol)
are iso8859 encoded
o When editing a compound object containing text, and the canvas zoom
is != 1.0, the zoomed text size was used instead of the unzoomed
o Printer choice menu now discards any empty or duplicate printers that
are in /etc/printcap
o A more robust algorithm for finding the center of an arc given three
points on the radius is in place. The old algorithm gave up too often,
making some operations on arcs (e.g. rotate) fail.
o Rounding error in zoom-to-fit-canvas produced bad centering of figure
o Maximum number of printers increased to 1000 for lprng systems, and is
now checked for exceeding maximum
o Export to PDF now disables page size, orientation, etc. since PDF is
meant to be imported into pdflatex or other processors
o Fixed a bug introduced in 3.2.3b which made selecting objects
difficult at higher zooms
o When editing a compound, if either the width or height was made 0,
divide by 0 would occur
o Line lengths weren't erased after creating arc box (showlengths on)
o Doesn't allow coincident consecutive points in objects or boxes with
zero dimensions (coincident corners). Also, doesn't allow box or
arcbox with zero x- or y-dimension.
o Line width indicator didn't always update on some systems
o Temporary files weren't closed before deleting them in read_gif,
read_tif and read_ppm
o Undoing the conversion of a spline<->line or line<->spline would crash
o When loading a figure from the recent files list in the File menu, imported
pictures with relative paths would not load
o Illegal box object removed from Examples/lidar.fig
o Typo on html docs - button 3 cancels constrained copy, not button 2
o Keyboard accelerators mislabeled - <Shift-f> flips objects left/right,
unshifted <f> flips them up/down