LWN.net Logo

The Grumpy Editor's guide to diagram editors

Let it be said up front: your editor is not an artist. He is, however, given to the creation of simple diagrams for the explanation of data structures, algorithms, etc. [Diagram example] See, for example, the diagram to the right, which comes from the kobject introduction in the Driver Porting Series. These images can be a useful form of hand waving when complex subjects are being discussed.

Back in the Golden Age of Proprietary Unix (around SunOS 3 or 4, say), there weren't a whole lot of tools available for image editing. If you youngsters out there want to get a feel for how desperate those times could be, consider this: we often had to resort to tools like the LaTeX picture mode to create drawings in digital form. Happily, things have gotten better since then.

Things aren't enough better, however, that your editor has stopped keeping an eye out for a better tool. This article is an attempt at summarizing the current state of the art in free drawing editors. The emphasis here is very much on the creation of diagrams and technical drawings; we'll not be looking for the best tool for the creation of birthday party invitations, pneumatic science fiction art, obnoxious animated banner ads, or beautiful but incomprehensible icons. Your editor is trying to get some work done and needs a diagram editor which doesn't drive him nuts.

idraw

For the first stop, we might as well complete the history lesson. Back in the early days of X11, there were many efforts to produce The One Toolkit which would unify the desktop. Actually, that situation hasn't changed a whole lot in 15 years. One of the early efforts was a C++ framework called InterViews. InterViews failed to change the world directly, though many of its ideas and lessons have lived on in the design patterns community and in projects like Fresco.

InterViews did, however, produce a drawing tool named idraw, which, for years, was the definitive free drawing package. It combined full functionality (for the time) with a well-thought-out interface and a nice set of keyboard shortcuts. Creating drawings with idraw was a quick and painless process. idraw stored its output as PostScript files, making the drawings easy to print and the quality relatively good.

One might think that idraw's day has passed, given that the InterViews team has not produced a release in over ten years. As it turns out, however, there is a project (called ivtools) which is dedicated to the maintenance and improvement of the InterViews toolkit and associated tools. Releases are rare, but ivtools-1.0.4 came out last February. That said, the simple fact is that idraw's time has passed. This program has had little in the way of development for over a decade, it can't export to interesting image file formats, it has no concept of layers, it depends on a large toolkit that nobody uses, and it is a major unpleasant pain to install. InterViews was an important step toward where we are today, but even a grumpy editor sees the need to move beyond the 1980's and look at what is being hacked on now.

XFig

[XFig] Another tool with a long history is XFig. It shows many of the distinguishing characteristics of an early X11 program (though it actually had its start with SunView): home-brewed widgets, unique keyboard and mouse conventions, etc. It is, however, a highly capable tool. XFig supports most of the features one would expect from this sort of utility, though they can sometimes be hard to find. It has a sort of layer support (it works by assigning a numeric "depth" to every object), can export to any format one could imagine, allows the creation of libraries of customized objects, etc. XFig understands attachment points: when told to, it will stretch lines which connect objects to each other to keep those connections when an object is moved.

On the down side, XFig can only undo the most recent operation. Its keyboard shortcuts are like those of no other application, and will take some getting used to. The interface is highly modal; XFig's window includes an area saying what the three mouse buttons will do at any given time for a reason. Grouping objects, for example, requires selecting the group "tool," selecting individual objects with the left button or picking the corners of rectangles with middle button, then completing the operation with the right button. Your editor's biggest problem with XFig, however, is the quality of its image output. He might not be an artist, but he would still rather see his work rendered with nice fonts and antialiased lines. XFig's output prints nicely, but does not work as well on the web; given that XFig is oriented toward tasks like the production of complicated circuit diagrams, that is not entirely surprising.

Tgif

Tgif boasts a release history going back to 1990; recent releases appear to be coming about once [Tgif] per year. This tool resembles XFig in a number of ways; it, too, features home-brew widgets and a unique interface. Tgif does have a more conventional set of keyboard bindings, at least; Control-S will save the current file, for example. Tgif's interface includes a sort of control panel where one can spend a long time cycling through the various options (font sizes, colors, fill patterns, etc.); fortunately, the menus provide a quicker way of setting these attributes. Attachments are supported, making the rearranging of diagrams easy.

Tgif does not support layers, which is a major disadvantage. Actually, that is not quite true: it does have a "color layers" mode where each color is rendered into a separate layer. This mode may be useful for certain types of printed output, or for certain types of drawings (schematic diagrams, perhaps) where objects in different colors really should be separated. Tgif also allows drawings to have multiple pages; among other things, these can be used to create animated GIF images. Your editor would gladly trade both capabilities for a decent layering mechanism.

Tgif has a set of image editing functions that might have been better left to the Gimp. What it does not have, alas, is antialiased image output. Actually, exporting to images is strange in general; one must set the "print format" to the desired image format, then "print" the diagram. The image will be created without prompting for a name, and without regard to any file which may have already existed with the chosen name. Documentation for Tgif is sparse as well.

OpenOffice.org

OpenOffice.org comes with a drawing tool which has been getting more capable over time. [OpenOffice] As one might expect, it has almost every function imaginable, including 3D effects, a library of tiled background images, attachments, etc. OpenOffice may well be the only free drawing editor which performs spell-checking. It supports layers, though the interface to layers is clunky at best. Your editor must confess that OpenOffice tends to drive him nuts. It can reset drawing attributes at unexpected times, it never remembers what image format you exported to, and it is generally not the fastest application on the processor. OpenOffice is a sort of Swiss Army Knife; it can perform almost any function, but, for any given function, it tends not to perform as well as a more focused tool.

OpenOffice will export to an unbelievable number of formats, including (perhaps uniquely) PDF. When your editor exported to PNG, however, he got the same old jagged lines. OpenOffice also exports a full page image, while most other drawing editors will create an image which fits the drawing.

All of the above notwithstanding, OpenOffice.org's editor is a worthwhile addition to the Linux desktop.

Karbon14

Once upon a time, KDE had a program called Killustrator. The name ran into trademark problems, which were circumvented by renaming the tool "Kontour." [Karbon14] But then the developers stopped working on Kontour, and that problem proved harder to get around. So now, instead, the KDE project is pushing a tool called Karbon14; it can be found in KDE 3.2.

Karbon14 appears to be aimed at more artistic uses; it thus lacks some of the features (snap to grid, attachments, arrow drawing) which are useful for diagram creation. On the other hand, it has tools for drawing gradients and drop shadows, as well as more dubious features like the "star" and "spiral" tools. Karbon supports layers, but seems to want to put every object into its own layer. It has a multi-level undo feature. There is also a plugin mechanism for the addition of special effects.

Unfortunately, what Karbon14 also has is lots of bugs. Your editor, who tried both the Fedora Core 2 Test 3 and Debian unstable builds, found the tool easy to crash. The "zoom tool" can put it into an infinite loop. Drawing polylines can produce hallucinogenic results. Text drawing was never seen to work on either system. An attempt to export to PNG yielded a solid black image - that is one way to get rid of aliasing problems, but the results are not very helpful for web publication.

In all fairness, one should note that Karbon14 is currently at version 0.1. This tool has the potential to evolve into a capable, highly-featured drawing editor. But it's not yet ready for a grumpy editor's desktop.

Dia

[Dia] GNOME's entry in the diagram editor category is dia. This tool, currently at version 0.93 (released without fanfare on May 1), has been no stranger to obnoxious bugs in the past, but it has stabilized nicely over the last year or so. It is, at the moment, your editor's diagram editor of choice.

Dia is clearly oriented toward the creation of diagrams. It has snap-to-grid, layers, attachments, and several libraries of objects for schematics, flowcharts, UML diagrams, etc. On the other hand, it lacks gradient editors, 3D swirl generators, shadows, and fancy background clip-art. Dia does beautiful antialiasing, both on-screen and in image exports. On the other hand, control of object attributes is inconsistent and sometimes hard to find. Rectangle filling is controlled by double-clicking on the rectangle tool icon; control of arrowhead dimensions is, instead, obtained by selecting "details" at the end of a long list of possible arrow types. Alignment and grouping operations require navigating through a series of cascading menus; some keyboard shortcuts would be nice here.

Dia also has a reasonably comprehensive set of configuration options, which is always a nice surprise in a GNOME application. For example, it is possible to turn off the "switch back to the select tool after every operation" mode that seems to be so popular in modern interfaces, but which your editor finds obnoxious. Dia features a Gimp-style right-button menu which provides access to everything, but that menu can be replaced with a toolbar by tweaking the appropriate preference.

In conclusion...

A few other packages are worth a quick mention:

  • Xdraft looks like an attempt to make a serious free drafting application. Unfortunately, it also looks like it has gone idle over the last year.

  • Sodipodi is a well-advanced vector drawing package. It is aimed more at artists than creators of cheap diagrams, however, so it has not been reviewed in detail here.

  • If you wander deeply enough into the Gimp's menus, you'll find GFig, which appears to be an attempt to graft some vector drawing operations into that utility. GFig may work for adding certain effects to images, but it still doesn't turn the Gimp into a drawing editor; the Gimp has many strengths, but this is not one of them.

As this survey shows, the free software community offers a wealth of diagram editing tools. Many of them have reached a reasonable level of maturity though, like people, they are aging in different ways. These applications are seeing substantial development and are evolving quickly. Before long, the community should have some of the best tools available anywhere. Grumpy creators of hand-waving diagrams everywhere should rejoice.


(Log in to post comments)

Try comparing to professional illustration programs

Posted May 4, 2004 14:50 UTC (Tue) by stevenj (subscriber, #421) [Link]

Unfortunately, last I checked (some months ago), most of these tools, including some others like Sketch that weren't mentioned, don't hold a candle to professional drawing programs like Adobe Illustrator or Deneba Canvas. Please, we need a real review, where you're not just drawing a couple of boxes with text (which was state-of-the-art about 30 years ago), written by someone who has used a good non-free program.

I tried for several hours to create a simple technical illustration of a bent fiber, going from one free package to another (I tried OpenOffice, SodiPodi, xfig, Kontour, Dia...), and I failed miserably to get anything close to what I wanted. It was probably possible, but just too hard. Then I went to Illustrator (which I had barely used before...I am used to Canvas) and was able to do it in a few minutes.

It's frustrating, because it almost seems like the authors of these programs have never used professional drawing software. Many of the programs are missing even the most basic things, like using the arrow keys to nudge objects. Perhaps some of the newer programs/versions are better, but this review gives me absolutely no insight into that question.

(Yes, I know the editor was reviewing "diagram editors," not just drawing packages, but in my mind that is just a euphemism for "primitive 1980 illustration task." Why must you set the bar so low?)

Try comparing to professional illustration programs

Posted May 4, 2004 15:46 UTC (Tue) by dougm (subscriber, #4615) [Link]

(Yes, I know the editor was reviewing "diagram editors," not just drawing packages, but in my mind that is just a euphemism for "primitive 1980 illustration task." Why must you set the bar so low?)

Diagram editors are made for editing diagrams. Programs like Illustrator aren't, particularly--they're general-purpose tools. So if all you want to do is make a diagram, you benefit from the (relative) interface simplicity, bundled templates, and general suitedness of the tool to the task.

If "diagram editors" didn't fill a niche, Microsoft Visio would not be as popular as it is, and people would be using Canvas or Illustrator instead.

Try comparing Apples to Oranges

Posted May 5, 2004 16:05 UTC (Wed) by GreyWizard (subscriber, #1026) [Link]

Unfortunately, [...] most of these tools [...] don't hold a candle to professional drawing programs like Adobe Illustrator or Deneba Canvas.

Hmmn... Are you the sort of person who strolls into a hardware store and exclaims, "What the heck! I don't see watermellons on any of these shelves. Where are the watermellons? What a pathetic store this is! They don't even sell watermellons..."? Do you shake your fist at apple carts that don't contain enough oranges? Would you go to a web site for graphic artists and complain about the lack of Linux kernel coverage?

Well, here you are on a web site with an explict free software focus, reading an article (by someone who admits in the first sentence that he is not artistically inclined) that attempts to survey free software drawing tools for simple diagrams -- excuse me, primitive 1980 illustrations -- and all you can think to do is moan about the lack of whizzy proprietary graphic artist tools? Settle down for goodness sakes.

comparing to the best available proprietary software *is* apples to apples

Posted May 5, 2004 18:11 UTC (Wed) by stevenj (subscriber, #421) [Link]

Well, here you are on a web site with an explict free software focus, reading an article (by someone who admits in the first sentence that he is not artistically inclined) that attempts to survey free software drawing tools for simple diagrams—excuse me, primitive 1980 illustrations—and all you can think to do is moan about the lack of whizzy proprietary graphic artist tools? Settle down for goodness sakes.
I'm not moaning about the lack of proprietary graphics programs—I'm moaning that I want to use a free drawing programs, but they all seem to be dramatically inferior to the proprietary stuff on other operating systems (even proprietary drawing programs from 10 years ago).

I'm still optimistic that this will change, but it won't as long as we compare only to other free-software programs on a platform (Unix) that traditionally hasn't had good graphics software (until MacOS X). Please, raise the bar!

comparing to the best available proprietary software *is* apples to apples

Posted May 13, 2004 12:25 UTC (Thu) by gvy (guest, #11981) [Link]

> Please, raise the bar!

Query returned empty set (TM)

The Grumpy Editor's guide to diagram editors

Posted May 4, 2004 14:57 UTC (Tue) by parimi (subscriber, #5773) [Link]

I used Xfig for doing all the diagrams for my report and I was impressed by it. It takes a while to figure out keyboard shortcuts etc. The quality of postscript images generated by Xfig was very good too (when compared to M$ tools like MS Word, Visio or Paint). I think Xfig is ideal for quick diagrams and fits well with latex for generating and inserting images into documents. Never used the other tools mentioned in this article though! Also, worthy of mention is sketch - a vector drawing program written in python. I was surprised that I couldnt find the homepage for sketch - not sure if it is still being developed or has been taken over by skencil?

The Grumpy Editor's guide to diagram editors

Posted May 4, 2004 17:36 UTC (Tue) by komarek (guest, #7295) [Link]

Here here! Xfig produces excellent quality output if one chooses the proper formats and fonts. Because all of my publications use LaTeX (I'm an academic), I really appreciate the variety of TeX-related output formats and fonts. Besides the obvious Encapsulated PostScript output, there are several varieties of native LaTeX formats that are human readable and editable.

-Paul Komarek

Skencil Webpage

Posted May 5, 2004 9:39 UTC (Wed) by ber (subscriber, #2142) [Link]

Skencil is the new name of Bernhard Herzog's Sketch. Check out: www.skencil.org. On regular intervals Skencil scores high on comparions in German computer magazines. The 0.6.x series is very stable and mature.

Heve you checked "ipe"?

Posted May 6, 2004 2:30 UTC (Thu) by ToNo (subscriber, #8039) [Link]

When making diagrams for LaTeX I have found ipe to do a very good job.

"Ipe is a drawing editor for creating figures in PDF or (encapsulated) Postscript format. It supports making small figures for inclusion into LaTeX-documents as well as making multi-page PDF presentations that can be shown on-line with Acrobat Reader."

Some of the Ipe's main features (according to the author) are:

  • Entry of text as LaTeX source code. This makes it easy to enter mathematical expressions, and to reuse the LaTeX-macros of the main document. In the display text is displayed as it will appear in the figure.
  • Produces pure Postscript/PDF, including the text. Ipe converts the LaTeX-source to PDF or Postscript when the file is saved.
  • It is easy to align objects with respect to each other (for instance, to place a point on the intersection of two lines, or to draw a circle through three given points) using various snapping modes.
  • Users can provide Ipelets (Ipe plug-ins) to add functionality to Ipe. This way, Ipe can be extended for each task at hand.
  • The text model is based on Unicode, and has been tested with Korean, Chinese, and Japanese.
  • The UI is implemented using the portable toolkit QT, and so can be compiled for Unix, Windows, and Mac OS X.
I especially find the quality and control of the output better than in other free tools. In addition is the file format (XML embedded into the EPS or PDF file) very neat, "the output is the source".

Heve you checked "ipe"?

Posted May 13, 2004 7:01 UTC (Thu) by mcmt88 (guest, #13309) [Link]

I second the "ipe" recommendation. It's great. It has very sophisticated (almost CAD-like) snapping capabilities.

It can also import PDF files, so it's good for annotating R/matlab/octave graphs.

There's a window's version in addition to the standard unix versions (QT toolkit).

The Grumpy Editor's guide to diagram editors

Posted May 4, 2004 15:19 UTC (Tue) by Soruk (subscriber, #2722) [Link]

Each time I've needed to do a diagram (or even draw templates for CD-R inlays, I've always found myself firing up Arcem and running Acorn RISC OS 3's !Draw.

Looking at this article I now have some native options to look for, but until now I've yet to find something that comes close to !Draw. Not that I want to abandon Arcem as there are still things I use it for that I can't do anywhere else (aside from VirtualAcorn in WinXP or a real Acorn RiscOS box).

(Aside: you may be wondering why the ! ... Risc OS folks will tell you that a ! precedes an application - which is really just a directory with at least a few specific entries in it, and often many more. They rarely need installing as they are self-contained units, which you just double-click on...)

The Grumpy Editor's guide to diagram editors

Posted May 4, 2004 15:32 UTC (Tue) by jwb (subscriber, #15467) [Link]

The Guy-Who-Uses-a-Mac guide to diagram editors:

This is pretty much the benchmark for diagram editors as far as I can tell. Whenever I need to draw a nice diagram I whip out the powerbook. Aside from that I use Dia, but it can be quite obnoxious and the standard library is pretty homely.

The Grumpy Editor's guide to diagram editors

Posted May 4, 2004 22:32 UTC (Tue) by noise (subscriber, #2923) [Link]

I second that! Omnigraffle won me over the first time I tried it. I've tried to use Dia so many
times and never been able to produce an acceptable diagram without cursing endlessly for hours.

Anyone working on a diagram editor should try out Omnigraffle and learn from it. It blows away
even Viseo.

The Grumpy Editor's guide to diagram editors

Posted May 13, 2004 10:23 UTC (Thu) by cpm (subscriber, #3554) [Link]

Wow, Omnigraffle works really well on Linux, oh, wait.
No it doesn't.

Wait, is this Apple Weekly News? I thought it was Linux Weekly News.
Oh. Somehow I got confused somewhere.

Omnigraffle looks pretty nice. Shame it has no relevance here.

The Grumpy Editor's guide to diagram editors

Posted May 4, 2004 16:36 UTC (Tue) by rknop (guest, #66) [Link]

What I *really* want is a way to *import* Postscript into OpenOffice.org. Not as an image (though even a postscript file with a preview image as XFig handles it would be nice, and OOo doesn't do that), but as the actual objects, so that they might be moved about and further edited.

I've managed to do it, sort of, into XFig using ps2fig. I find that it's sort of a pain to deal with at that point.

I also haven't managed to export XFig into something that can be imported into OpenOffice.org. This too is a pain.

ps2fig does have a DXF option, which ostensibly OpenOffice.org supports, but I find the translation is no good. OpenOffice.org thinks that the imported drawing (in the cases I've tried-- I have a very specific need) is
*tiny*, and the quantization of the positions completely screw everything up. Fonts are the wrong relative sizes as well.

-Rob

PostScript import

Posted May 4, 2004 20:08 UTC (Tue) by rfunk (subscriber, #4054) [Link]

There's a program called pstoedit that converts PostScript into various
editable formats, including Adobe Illustrator, AutoCAD dxf, fig/xfig,
Sketch, tgif, and many others.

The Grumpy Editor's guide to diagram editors

Posted May 4, 2004 22:40 UTC (Tue) by jamesh (subscriber, #1159) [Link]

Sounds like you want pstoedit.

The Grumpy Editor's guide to diagram editors

Posted May 5, 2004 20:01 UTC (Wed) by rknop (guest, #66) [Link]

pstoedit is what I've used to import postscript files into XFig.

I have yet to make a series of transitions to import it into OpenOffice.org succesfully, however. Have you managed to do that with pstoedit? If so, how?

-Rob

The Grumpy Editor's guide to diagram editors

Posted May 5, 2004 2:18 UTC (Wed) by lolando (subscriber, #7139) [Link]

I have no idea whether Open Office can edit SVG files, but if so, you can import an EPS file into Sodipodi and save it as SVG. Or edit it in Sodipodi.

The Grumpy Editor's guide to diagram editors

Posted May 4, 2004 19:10 UTC (Tue) by vblum (subscriber, #1151) [Link]

This is an excellent topic for a review, and a nice overview. Yet, it is disappointing that the problem of drawing simple diagrams in OSS is still somewhat unsolved. I retry a number of different applications from time to time, but the sad fact is:

Plain ASCII postscript, emacs + a viewer beat them all hands down. It's no good for painting (art), but sure does the job for diagrams.

OpenOffice Draw seemed reasonable, but it has a severe font bug that produces lots of bogus stuff instead of text when you mix two fonts and export to eps.

xfig is nice and capable, but the UI is a bit unwieldy.

Naive question: Wasn't there something called Kivio, once upon a time? What did that do?

Kivio

Posted May 4, 2004 20:20 UTC (Tue) by rfunk (subscriber, #4054) [Link]

Kivio is the KDE answer to Visio -- a vector diagram editor rather than a
vector drawing program like Illustrator and Kontour (dunno about
Karbon14).

Kivio probably would fit well in this lineup.

Kivio: not as good as dia?

Posted May 4, 2004 21:40 UTC (Tue) by pjm (subscriber, #2080) [Link]

Dia seemed much better than kivio last I looked, and a casual glance didn't reveal any advantages (unless you strongly prefer kde widgets over gtk). I haven't spent much time with kivio though; can anyone give a reason to use kivio rather than dia? E.g. is it good for importing & exporting, or printing or something?

Kivio: not as good as dia?

Posted May 6, 2004 2:37 UTC (Thu) by boudewijn (subscriber, #14185) [Link]

I find Kivio quite a bit easier to use than Dia -- especially with the
version currently in the KOffice cvs, which is polished and has a large
selection of stencil shapes, including all Dia's stencils. I use it for my
UML diagramming, my wife uses it to visualize the relations and plots in
her novels.

You can export your drawing to most bitmap file formats by choosing
Page/Export Page -- the File/Export only exports to native or Oasis
format, because Kivio can group drawings in one document.

Kivio

Posted May 4, 2004 21:21 UTC (Tue) by busterb (subscriber, #560) [Link]

Kivio is still around, part of the KOffice suite. It is a more dedicated
chart and diagram tool, and is not so good for general drawing. It
supports:

* Layers and object grouping
* Grids, snapping and general alignment
* An extensive stencil set (more stencils can be found in the Kompany's
commercial version Kivio mp, though the free version has quite a few)
* A few general tools; poly and straight connectors that stretch with
connected objects, support captions, width, arrowheads, text
* Kivio mp has a few more drawing tools, like bezier curves, circles and
rectangles. The only real shapes you can draw in the free Kivio are
predefined stencils.
* free Kivio can write PS and PDF (actually, any KDE app can; look at
the PDF printer), but doesn't appear to write anything else. I guess you
could take a screenshot of print preview to get a PNG or such. Kivio mp
presumably can export more formats.

Google around and try them out. Kivio seems more useful for this task
than Karbon14.

For drawing, you might also look at KPresenter; a lot of people at my
work tend to use Powerpoint as a general diagramming and drawing tool, so
why not KPresenter. It at least exports to graphic formats and has a lot
more drawing tools than even Kivio. Actually, it is interesting that
different components of KOffice don't share drawing tools.

Kivio and theKompany

Posted May 6, 2004 0:03 UTC (Thu) by rfunk (subscriber, #4054) [Link]

* Kivio mp has a few more drawing tools, like bezier curves, circles and rectangles. The only real shapes you can draw in the free Kivio are predefined stencils.

As long as such important features are held back for the pay version, Kivio will never go very far. I don't mind the extra stencils being held back, but drawing tools? That sort of thing from theKompany makes even Ximian's Microsoft envy look good.

Kivio and theKompany

Posted May 6, 2004 1:51 UTC (Thu) by cloose (subscriber, #5066) [Link]

As long as such important features are held back for the pay version, Kivio will never go very far. I don't mind the extra stencils being held back, but drawing tools? That sort of thing from theKompany makes even Ximian's Microsoft envy look good.

AFAIK theKompany has nothing to do with the KOffice version of Kivio. They don't hold anything back and they don't work on it.

BTW Peter Simonsson and Nicolas Goutte did a lot of work lately. So I'm sure Kivio will improve.

The Grumpy Editor's guide to diagram editors

Posted May 4, 2004 20:17 UTC (Tue) by rfunk (subscriber, #4054) [Link]

I'm surprised Sketch wasn't covered here. While it certainly has its
drawbacks, I often find it handy.

I come from the days when xfig was the only reasonable option for
vector-editing in Unix. I still find that it beats all for my purposes,
but I keep trying others (with Sketch being my most common second
choice). Since I like to save everything to scalable EPS before
rasterizing, and my rasterizing is more often for printing than web use,
the lack of anti-aliasing doesn't really affect me much.

If I remember correctly, the last time I needed to worry about
anti-aliasing a vector drawing, I imported the EPS into Gimp.

"nice fonts"

Posted May 4, 2004 20:25 UTC (Tue) by rfunk (subscriber, #4054) [Link]

I forgot to mention... what's Jon's problem with xfig's fonts? It uses
the standard PostScript fonts. For web use, Helvetica should be fine.

Granted, the fact that it doesn't interact with the system fonts is a
disadvantage, but even OpenOffice.org has that problem.

Of course, I'm biased in the direction of creating good-looking printable
PostScript and EPS files.

"nice fonts"

Posted May 6, 2004 14:18 UTC (Thu) by iabervon (subscriber, #722) [Link]

He's looking for something that produces images for use in LWN, since that's what the grumpy editor is the editor of. This makes xfig lousy for his purposes, because it relies on something else to do high-quality rasterization for it. The problem isn't the fonts, it's the font rendering. I bet he could get pleasing results out of xfig, latex, xdvi, and a screen capture with the GIMP.

The Grumpy Editor's guide to diagram editors

Posted May 4, 2004 20:56 UTC (Tue) by njhurst (guest, #6022) [Link]

I'm surprised nobody has mentioned inkscape. It seems to be at least as capable as karbon14 and the only things it really misses are: attachment points, layers (soon to appear in 0.39) and clip art. It has antialiasing, arrows, grids and guides, kerning support, and even spirals! :) It can save to SVG and EPS and various bitmapped formats.

Inkscape

Posted May 4, 2004 21:20 UTC (Tue) by corbet (editor, #1) [Link]

Hmm...another one I missed. It looks like a followup article will be called for here. It can be hard to find all of the available applications in a given category...

Suggestion for future then...

Posted May 5, 2004 6:23 UTC (Wed) by alex (subscriber, #1355) [Link]

Perhaps it would be worthwhile picking/announcing a review subject a few weeks in advance and querying the collective brain to suggest suitible candidates for review?

I also agree with some of the other comments made that it would be worthwhile benchmarking reviews against the best-in-class or market leading proprietry packages for reference.

The Grumpy Editor's guide to diagram editors

Posted May 4, 2004 21:16 UTC (Tue) by bryce (subscriber, #16388) [Link]

Ditto on njhurst's recommendation for checking out Inkscape. While it's missing
several important features for doing diagramming, it's been picking up new features
steadily. Plus, since it builds on a good artistic drawing core, it's got capabilities
that many of the diagramming tools lack, so for diagrams that require a high degree
of artistry it might be more than sufficient.

Sort of orthogonal to this discussion but worth a mention - there is an SVG clipart
project at http://www.openclipart.org/ that has involvement from the Inkscape,
Open Office, and Freedesktop communities, that's building a repository of quality
clipart available in the Public Domain.

The trouble with Dia

Posted May 4, 2004 22:22 UTC (Tue) by bryn (guest, #1482) [Link]

I think that Dia is a beautiful program - it loads quickly, has a simple interface, and the graphics look great. I would love to use Dia for my diagrams. The only thing that stops me is the inability to rotate objects. I happen to need to do that for a lot of my diagrams, so it's a real show-stopper. I've seen bug reports requesting rotation for ages, but it's still not in the most recent release (AFAIAA). There appear to be problems with not being able to arbitrarily rotate text, but I would be happy if it could just rotate simple objects - a 2D rotation matrix should be trivial to apply.

Such a shame. It's an itch I'd love to scratch, but Dia's way out of my league for programming.

The Grumpy Editor's guide...

Posted May 5, 2004 2:16 UTC (Wed) by ordonnateur (subscriber, #6652) [Link]

As this appears to becomming a regular series could you consider a link on your main page to all these 'Grumpy Editors Guides'. I am sure one day I will need one of these programs and by then I will have forgotten when you posted the guide.

The Grumpy Editor's guide...

Posted May 5, 2004 15:50 UTC (Wed) by vblum (subscriber, #1151) [Link]

I second this.

The Grumpy Editor's guide...

Posted May 6, 2004 10:59 UTC (Thu) by Duncan (guest, #6647) [Link]

Add my "yes" vote as well. I had occasion to need to reference one
recently, and had to go looking.

Duncan

Import and export to/from Visio

Posted May 5, 2004 5:42 UTC (Wed) by etwilson (guest, #8459) [Link]

My problem with all these tools is that everyone else in my department at school uses MS-Visio and since most of the work that I do is within a group context, I need to use Visio also. This is of course Microsoft's fault due to their closed file formats but it's the reality of working within a group. If OpenOffice could create a clone that imports and exports as well as Writer and Calc do I would be very happy.

Import and export to/from Visio

Posted May 5, 2004 13:04 UTC (Wed) by redferni (subscriber, #112) [Link]

The Visio file format is horrific, but it is possible to import from Visio 2002 by parsing its EMF preview (I've nearly got a vsdtosvg script working using this), and if you can get the sender to save as VDX (XML export) the excellent vdxtosvg XSLT converter should be able to get you SVG, and from there to Inkscape/Sodipodi and friends.

I don't know of anyone who's working on export to Visio, although I suppose you could do some sort of svgtovdx. It's a lot of work though.

Import and export to/from Visio

Posted May 6, 2004 2:44 UTC (Thu) by mdekkers (guest, #85) [Link]

I am in the same position as etwilson, and the point is *nobody* in a group of 10 or 20 or more are *all* going to save in a different format simply because *i* choose to use free software. They (rightly) state that my employer provides me, at great cost, with the tools to do a job efficiently and effectively, and if I choose to use something else, that should never be *their* problem. Can't say I disagree. If there was something on parity with Visio, I would be happy to use it - however, none of the current crop of tools are. I use OOo on Linux all the time, but for Visio I have to fire up VMWare. Faxt is - there is no Visio replacement, not even close, and that will be a significant hurdle for some time to come.

another missed tool

Posted May 5, 2004 7:11 UTC (Wed) by teddylwn (guest, #4318) [Link]

Another free diagram drawing tool that should be mentioned is umbrello. It
is a "UML modeller", and as such can escape searches for "diagram", but at
least in my case the diagrams I need are mostly UML.

I used it only for one presentation, and I found it sufficiently intuitive
and usable to do the job. The other toos I have used for diagrams are xfig
and dia, but I don't do this often enough to have a clear preference.

I second the idea to have all the "grumpy editor's reviews" linked from
the main page!

another missed tool

Posted May 6, 2004 16:34 UTC (Thu) by jriddell (subscriber, #3916) [Link]

Thanks, great to know you like it.

Modeller is just an academic word for diagrams, maybe I should call it a
UML diagram tool too to catch some more searches.

Jonathan Riddell
Umbrello developer

Metacity (OT)

Posted May 5, 2004 11:32 UTC (Wed) by tjc (guest, #137) [Link]

I see from the screenshots that our editor has succumbed to Metacity. I tried it for a while, but its inability to maximize a window along a single axis drove me nuts. This deficiency is probably a result of the Gnome Project's goal of being a Big Rubber Nipple for the masses.

Sawfish is in a state of semi-disrepair, but it still works with Gnome. Openbox is getting better too.

Metacity (OT)

Posted May 9, 2004 12:34 UTC (Sun) by bronson (subscriber, #4806) [Link]

You can maximize along a single axis in Metacity. I do it all the time.

That said, this bug drives me nuts.

Metacity (OT)

Posted May 10, 2004 11:01 UTC (Mon) by tjc (guest, #137) [Link]

You can maximize along a single axis in Metacity. I do it all the time.

How do you do that? I right-click on the maximize button and I get a menu; middle-click is a no-op. I've got the version from Debian unstable, although I haven't tried it for a while.

Metacity (OT)

Posted May 13, 2004 18:33 UTC (Thu) by jhardin (guest, #3297) [Link]

[CTRL]+[KP_ENTER]

I haven't figured out how to map it to a mouse action, but then I don't play around with that stuff very often.

Poor man's antialiasing

Posted May 5, 2004 12:24 UTC (Wed) by im14u2c (subscriber, #5246) [Link]

An effective method I've used for antialiasing w/ XFig by exporting my image at 4x the resolution, and then using pnmscale or other similar tools to scale it to the actual resolution I want. It works pretty well.

TeX

Posted May 5, 2004 14:17 UTC (Wed) by bfields (subscriber, #19510) [Link]

We often had to resort to tools like the LaTeX picture mode to create drawings in digital form.
Don't write off TeX completely; there are much better tools than LaTex picture mode now. See, e.g., "The LaTeX Graphics Companion" for some nifty tools for making these sorts of diagrams.

TeX

Posted May 6, 2004 15:11 UTC (Thu) by nix (subscriber, #2304) [Link]

XY-PIC, in particular, is an astonishingly capable tool...

... with a syntax that looks more like line noise than that of any other tool I've ever heard of. This detracts considerably from its usefulness. :(

What I *really* want

Posted May 5, 2004 20:06 UTC (Wed) by wcooley (subscriber, #1233) [Link]

I tend to use Dia to make network diagrams, ERDs and occasionally UML-ish thing and flowchart-ish things, but that's producing documentation. What I'd *really* like is a tool to replace a whiteboard--a diagramming tool that actually helps me *think* about a problem, rather than just document a solution. I know I'm probably asking a bit much--entering graphical information with a mouse is cumbersome at best, so it would probably require a pen digitizer or TabletPC sort of thing.

What I *really* want - Maybe I've found it?

Posted May 5, 2004 20:46 UTC (Wed) by wcooley (subscriber, #1233) [Link]

After posting the previous, I saw the project Jarnal on Freshmeat (http://www.dklevine.com/general/software/tc1000/jarnal.htm), which actually kinda seems like what I'm thinking about...

Exporting only objects in OpenOffice.org Draw

Posted May 6, 2004 7:50 UTC (Thu) by ranger (guest, #6415) [Link]

You can easily export only the objects (and not the whole page) in OpenOffice.org Draw. Select the objects you want, File->Export, and check the "Selection" checkbox.

Of course, it is only active for non-page-based formats (ie it is not available for PDF, HTML and Flash).

OO.o Draw is better than most other typically-available tools (ie MS Office Standard).

The Grumpy Editor's guide to diagram editors

Posted May 6, 2004 8:20 UTC (Thu) by mly (guest, #2171) [Link]

I realize that this is a bit outside the scope of your review, but for those of use who are hopeless at drawing things, and good at writing code, a solution might be to use a tool like AT&T's graphviz.

Then you write a text file, perhaps looking like this...

digraph G {
    main -> parse -> execute;
    main -> init;
    main -> cleanup;
    execute -> make_string;
    execute -> printf
    init -> make_string;
    main -> printf;
    execute -> compare;
}
...run a command on the file, and you'll get a pretty graph in the file type you like. This is really very different from tools like LaTeX, because what you write in your code is only the logical connections between the nodes in your graph, not the layout (although you can influence layout somewhat).

The Grumpy Editor's guide to diagram editors

Posted May 13, 2004 12:45 UTC (Thu) by gvy (guest, #11981) [Link]

It's WYSIWYM -- you describe what it is and [usually] not how it should look. Then it just looks good :-)

(by "usually" I mean artifical weighing for the most part)

The Grumpy Editor's guide to diagram editors

Posted May 6, 2004 9:45 UTC (Thu) by jeremiah (guest, #1221) [Link]

I keep switching between OOo Draw and Dia. I like OO's connector management and interface better, but the lack of templets and the inability to have drawing use more than one page is a pain in the butt. Fine for small drawings, but usless for large complex systems.

Dia on the other hand is exactly the opposite. Like the templest and the multi page stuff, but the UI is a little rugh, and the connector management is crappy. I don't really wnat to have to hit exactly where the point I want, I'd like some suggestions.


pic and troff

Posted May 6, 2004 16:33 UTC (Thu) by addw (subscriber, #1771) [Link]

I still use this for diagrams, simple ASCII input, run troff and there you are.

Probably not for absolute novices, but you can get *exact* computed shapes and is great if you want to generate the diagram from a program.

Xfig comments

Posted May 6, 2004 20:11 UTC (Thu) by jdaily (guest, #604) [Link]

I've been a devoted Xfig user for years, for several reasons:

1) No dragging. It is utterly inane to waste my finger muscles dragging a box corner. This sounds silly until you experience the joy that is clicking to specify point locations.

2) Precision.

3) Editing diagrams with text editors, sed, grep, etc. fig is a nice format for text tools.

4) Automatable export via transfig; I can store .fig files in CVS/SVN and easily generate image files via Makefiles at any later point in time.


However, there are some major flaws:

1) As pointed out, text output is a problem. More importantly, manipulating text is incredibly painful.

2) Focus is annoying. Your mouse has to be directly over a field to type in it.

3) There are few shortcuts to allow for higher-level drawing. The precision I so love turns into tedium very quickly.

4) It is difficult/unpleasant to use under Mac's X11. No colors, keyboard shortcuts don't work.


Unfortunately, the click to place points paradigm of Xfig has spoiled me and made it tiresome to use any other drawing program. Is there anything else out there that allows this functionality?

The Grumpy Editor's guide to diagram editors

Posted May 14, 2004 7:00 UTC (Fri) by kirkpj (guest, #18488) [Link]

Hey "Grumpy Editor" thanks for the pointers, particulary to Open Office and their draw tool.

I need a diagram editor for a project I am working on at work (Windows environment). Downloaded and OO's 'draw' package and its work's a treat.

James

Copyright © 2004, Eklektix, Inc.
Comments and public postings are copyrighted by their creators.
Linux is a registered trademark of Linus Torvalds