JavaFIG - the Java diagram editor
This is the home page for the JavaFIG graphics/diagram editor.
JavaFIG is based on the xfig graphics editor for the X11 window system.
It tries to mimic as much of the functionality and user interface
of xfig as possible with the current Java release.
(For more information about xfig contact
Brian Smith, Lawrence Berkeley Laboratory, bvsmith@lbl.gov).
Please read the
tutorial
if you are not familiar with the concepts of xfig or JavaFIG.
JavaFIG is no substitute for typical "presentation graphics" programs like
Microsoft Powerpoint, and it provides much less features and effects than
a typical drawing program like Corel Draw.
Also, its user interface differs somewhat from these drawing programs.
JavaFIG is intended for the creation and editing of technical diagrams
and drawings.
Key points of the JavaFIG and xfig editing functions and user interaction
are support of hierarchical objects (called compounds) to arbitrary depth,
several styles of arrows, easy attribute updates,
and smart object copy and move functions.
JavaFIG promises to be as portable as possible to xfig.
Unfortunately, there is a tradeoff between what I want to do and
what I could do with the current Java release, that is, Java 1.1.
Some features of the current xfig versions (3.1.4 and 3.2)
are not supported by JavaFIG.
A list of missing or differing functions and bugs can be found
here.
On the other hand, JavaFIG allows to load documents and embedded
pictures via URLs over the Internet,
allows embedded hyperlinks (clickable objects) in the drawings,
provides for unlimited UNDO,
and supports native Java printing and native GIF export.
A new arrow style (solder dots) helps to draw electronic circuit schematics.
The internal resolution of JavaFIG is increased to 2400dpi.
JavaFIG applet / download
While JavaFIG is best used as a standalone Java application,
it can be started as an applet from within a Java 1.1 compatible
WWW-browser or Suns appletviewer.
Depending on your browser's security settings, however,
the JavaFIG applet may not be able to access files on your local system.
In that case, it can still access input files via the HTTP-protocol
from WWW-servers.
Note that even the current versions of the Netscape Navigator (4.05) and
the Microsoft Internet Explorer (4.1) are not fully Java 1.1
compatible and cannot run the current version of JavaFIG.
You might try to run the older (and quite buggy) Java 1.02 compatible
version of JavaFIG.
However, I greatly recommend to download the JavaFIG class archive and
run JavaFIG as an application.
- JavaFIG 0.99 Applet Page (Java 1.02 compatible)
This page will download the old version of JavaFIG as an
applet. This will allow you to load input files via the HTTP-protocol
from WWW-servers.
Note that you cannot directly save files to your local disk.
Instead, JavaFIG will write output to an text window, from
which the FIG-file can be saved via the clipboard.
- JavaFIG 1.2 class archive
in ZIP-format for direct download.
The archive contains all files
(Java classes, images, configuration file, some examples and
some documentation) needed to run JavaFIG as an application.
Please read the README file contained in the archives
and follow its instructions to correctly install all JavaFIG files.
Because the archive is compressed, it is not ready to be included
with the Java CLASSPATH.
- As xfig itself, JavaFIG relies on the transfig package
to convert FIG-files to other file formats, including Postscript
and several styles of LaTeX output.
You can download the
transfig 3.1.2 package
from here. A precompiled version of fig2dev for Windows and OS/2
is available. See below for instructions.
JavaFIG installation
To install JavaFIG to your computer, just download the class-archive
(see below) and follow the instructions in the
README file in the "doc" subdirectory.
Also read the FAQ and CHANGES files for additional information.
Future developments:
As soon as the Java 2D API is available (and stable), I will include
most/all of the FIG attributes still missing from JavaFIG,
most notably rotated text, pattern fills, and robust line styles.
How to participate:
Please send me an email, if you found severe bugs not listed in
the bug-list below, or if you would like to improve JavaFIG.
Archives and documentation:
JavaFIG class archives and installation:
- LICENSE The shareware license for JavaFIG.
Please read and agree to this license agreement before using
and distributing JavaFIG.
- Installation README to use with one of
the class-archives below.
- A short tutorial (not yet)
- Known bugs and problems (version 0.99)
- User customization of JavaFIG (via the applet tag) (not yet)
- JavaFIG class archive
(compressed ZIP format)
- JavaFIG class archive
(uncompressed ZIP/JAR format, ready for inclusion in your CLASSPATH.
Make sure to download this archive in binary mode - many browsers are
not preconfigured to recognize ".jar" files yet).
Examples and class documentation:
Transfig package:
- The transfig 3.1.2 sources
in tar.gz format (160KB) for download.
The standard makefiles included with transfig require imake and
will work fine under Unix (Solaris, Linux, AIX, ...).
On the other hand, building transfig on other platforms is not
easy. You will need a C-Compiler and a new makefile to
get transfig working.
I have compiled the fig2dev program for Windows'95,
using the EMX/RSX DOS-extenders. With the appropriate
version of EMX/RSX, fig2dev should work under Windows 3.1/3.11/95/NT
and OS/2.
Fig2dev allows to export FIG-files in Postscript, Encapsulated
Postscript, IBM-GL and a variety of TeX-oriented (LaTeX, PicTeX,
EPIC, ..) formats.
As a Windows'95/NT/3.11/OS2 user you will need to download the
- fig2dev program
- fig2dev.bat batch file
- a corresponding JavaFIG
configuration file
(Depending on your installation directories, you may have
to edit both the 'fig2dev.bat' batch file and the 'javafig.cnf'
file)
- and a new version of either EMX or RSX.
For copyright reasons - JavaFIG is nominally shareware -
I am not allowed to include RSX with JavaFIG.
You can download the current version from several FTP-servers, e.g.
the University of Stuttgart:
RSX 1.3 (Windows'95/NT).
last updated: Fri Aug 21 11:41:11 MET DST 1998
Norman Hendrich
http://tech-www.informatik.uni-hamburg.de/applets/javafig/javafig.html