Three tips for working with open source diagrams

open source design
Image by opensource.com
submit to reddit
 
(10 votes)

If you're a big-time open source fanatic like me, you probably get questions about open source alternatives to proprietary tools rather frequently. From the 'Alternatives to Microsoft® Visio®' department, here are three tips that should help designers who use Visio in an open source environment. If you need an open source option for opening Visio files, a revived open source application for creating diagrams, or a lesser-known open source tool for converting Visio® stencils, these tips are for you.

1. Opening Visio files

Open source tools haven't been able to open Visio (.VSD format) diagrams for a pretty long time. The format is commonly used for infrastructure and architecture documentation and planning—and less commonly, for user interface design and planning.

Thankfully, Summer of Code students Eilidh McAdam and Fridrich Strba implemented support for opening .VSD format files in LibreOffice Draw last summer. This support is now available in Fedora 17's version of LibreOffice.

If you prefer to use Inkscape or any other open source SVG editor (such as Karbon14 or Xara,) Eilidh McAdam produced libvisio which works with the libwpd tools for converting .VSD files to .SVG—making it possible to open them in any SVG editor in Fedora. For Fedora 17, you'll need the libvisio and libvisio-tools packages that are now available.

These two projects are covered in detail in Libre Graphics World, including full instructions on VSD-to-SVG conversion.

Note: There isn't a solution yet for writing out to .VSD format, but you can write out to .PDF, of course, which may serve your needs in sharing your modified and originally .VSD-format diagrams.

2. Creating diagrams in a Visio-like environment

Traditionally, Dia has been the best game in town for open source diagramming, but it hasn't changed much over the years and requires a lot of tweaking and extra work to produce beautiful diagrams. For example, diagram graphics are not anti-aliased by default in Dia .9.7.1.

Inkscape is another option—my preferred one—but as a general vector graphics editing tool, it doesn't have the specialized niceities and workflow of a tool specifically focused on diagramming and takes a bit of experience to use it effectively for creating diagrams.

Calligra Flow, which is part of the Calligra suite of productivity applications, is now available in Fedora 17. The lineage of this application can be traced back to the KOffice Kivio diagramming tool, which according to Wikipedia was initially released in October 2000. In mid 2010, the Calligra project split off of the KOffice project; not long after, Flow maintainer Yue Liu got to work improving the stencil system and included stencils.

From my initial experimentations of creating sample diagrams with it, Calligra Flow looks to be a pretty promising diagramming tool, so give it a shot!

3. Converting Visio stencils (.VXD) to .SVG

Converting Visio-format stencils to .SVG involves a pretty kludgy workflow that doesn't always work. Depending on how complex the stencils are, though, it's possible to extract the shapes from a .VXD stencil file and use them as .SVGs. It involves using an old and seemingly abandoned project, so not much is new here, but now that you know how to open .VSD files, it may be of more interest to know how to also open .VXDs files.

Remember, this process can be really buggy and may need some  love. For example, you have to move the included 'chunks_parse_cmds.tbl' file to the directory you run the command from, in order for it to work. Even then it fails sometimes, but, it's a start!

The format for Calligra Flow stencils is open and it is ODG-based, so with some effort it is possible to manually convert VXDs to Calligra Flow stencils, and the project has an open call for help on that front. If you'd like to get involved, it seems like a great place to start.

Have fun!

""
Creative Commons License

10 Comments

Digitalus's picture

Very nice article. I especially like the Calligra Flow app, very promising.

Ulysses's picture

Don't forget about yEd. It is an excellent, time-saving tool!!

http://www.yworks.com/en/products_yed_about.html

mairin's picture
Open Source Evangelist

Yep, I've heard yEd is great, especially for system architecture and network diagramming. I decided not to mention it because it's not open source but it certainly runs well on open source desktop platforms, and is free (as in beer) of charge.

http://www.yworks.com/products/yed/license.html

PavelT's picture

One interesting app is also:
http://bpmn.sourceforge.net/
This one have also flow simulation :-D.

kle_py's picture

Have You tried the import function of LibreOffice ? Does it not convince You ?

mairin's picture
Open Source Evangelist

Yep, it works pretty well. It's mentioned in the article - we just got support for Visio file import in LibreOffice in Fedora 17.

EvilPixieMan's picture

LibreOffice is actually a pretty good alternative...
1. Once you have a library of symbols
2. Once you learn how to use all the vector drawing features hidden away that aren't plainly discoverable like...
> Edit in group without un-grouping
> Node/spline point editing
> Styles
> Intelligent connectors
> Glue Points
...etc.

BTW, if anyone wants a set of "MS Visio"-Like Network shapes for LibreOffice (Isometric shaded) - just let me know.

mairin's picture
Open Source Evangelist

EvilPixieMan, if you made the shapes, it would be awesome if you would be willing to license them under an open license such as CC-BY or CC-BY-SA. I would be interested in investigating whether or not we could ship them in Fedora.

EvilPixieMan's picture

Máirín,
They were created at my work so I need clearance from management. We were looking to make them available on our website as an extension (accepting that packaging galleries as an extension can be problematic because of gallery filename clashes). Main benefit the company would like to see is acknowledgement by way of links to our website (help search prominence). If there was a way to ensure that credit remained while directly bundling in Fedora, then no issue, but either way they'll be an easy addition via extensions.
Samples here http://www.vrt.com.au/vrt-network-equipment.html

mairin's picture
Open Source Evangelist

EvilPixieMan, if you wanted to license them CC-BY-SA, the 'BY' part of the license requires attribution. We could place your company's name and website URL in the package metadata (and potentially, if libreoffice provides a field, in the metadata that shows up in libreoffice when you browse the library.) Do you think your company would be willing to license them CC-BY or BY-SA then? (The SA means Share Alike, which requires users to share the files with others)