Using Visio in an open source environment
Three tips for working with open source diagrams
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.