2 Comments

If you are looking for a cost-free option to draw vector graphics on Mac OS X, consider Inkscape.

While it will not be everyone’s preferred solution–no one application ever is–it is cost-free, very capable and, thus far, stable.

Vector graphics featured early for Macintosh users. Those with longer memories will have experience with MacDraw or MacDraw II.

The key notion is that the image is composed of points, vectors (line segments), curves and other ‘shape’ objects. All of these can be represented as being on a very finely graded grid that can be scaled up or down in size. Areas bounded by lines, curves or shapes can be filled.

These elements can be built up to be grouped as objects that can then be re-used, either as they stand or with later editing to provide variants on the basic theme. This is unlike ‘paint’ programs that create an image. Images can be embedded within the illustration and manipulated – but that’s not the main theme of vector-graphics software.

(Portion of figure drawn by author.)

(Portion of simple figure drawn by author.)

For scientists this type of illustration software can be useful for drawing figures such as outlining an experimental protocol (my recent use of it, for what it’s worth). Of course, people use more powerful features to create a far wider range of illustrations.

This brings me to using Inkscape.

Let me first look at the less favourable aspects. Bear in mind there’s good stuff once you get past this.

Inkscape runs under the X11 windowing system. This is an open-source windowing system developed for the Unix/Linux world, maintained as the XQuartz project. (Mac OS X is Unix-based ‘under the hood’.) A copy of X11 comes with Mac OS X, or can be downloaded separately.[1]

The interface is an X11 interface, not a Mac OS X interface and Inkscape follows X11 user conventions, not Mac OS X conventions.

Inkscape-menu

It’s a mixed blessing. The software is free – that’s hard to argue with! On the other hand you get to use control-C for cut, rather than command-C and so on for those other common shortcuts that have become instinctive. (A few of the Apple shortcuts do work as expected; as an example command-plus or command-minus zoom the view in and out, respectively.)

Similarly the interface isn’t as elegant as ‘native’ applications can be. It’s a cosmetic and personal taste thing for the most part, but I can’t help feeling that you want a graphics application to look good – it’d help the feeling of what might be achieved with it. I’m not especially bothered by this–I worry more about functionality–but that said I would have liked to see better, clearer, fonts used in the application user-interface.

Inkscape-line-shape-menuInkscape isn’t as quite simple to get into as some of the simpler consumer commercial offerings.[2] A few editing operations aren’t immediately obvious; an initial foray into the documentation is a good idea. There’s no need to read it all. I suggest those new to the application read the basics of editing and perhaps skim the functions they are likely to use.

This is, to my judgement, a consequence of trying to pack a lot in.

By way of example, it’s not immediately obviously that you need to click an object a second time to bring up the rotation ‘handles’, so that you can rotate your selected object. One effect I was left a little disconcerting is that if you increase, say, the width of an object the height of lines alter. (It’s hard to tell if this actually affects the height or is a reporting quirk, but either way I wasn’t expecting this.)

On the good side, once you are past the basics, it relatively easy to use and very capable. Don’t be deceived by that it’s nominally short of a full release. (The current version is 0.48.2.)

To the left you can see some of the line and shape options. Within each of these there is finer control of the expected things – line widths, colours, join shapes, mitring, endings (blunt, extended, rounded), space filling (colours, patterns, graduations, etc.), fine control of elements of paths and intersections of paths, and so on.

Text can be styled and fitted to shapes. There is extensive control over layering of objects, grouping objects. One feature is ‘clones’ of objects – copies linked to a previous copy so that changes in the original are reflected in the ‘daughter’ copy. Tools are provided to lay out objects evenly on the page. (I’ve haven’t trialled these.) There is an extensive list of image effect filters.

Menus can be torn off to stand-alone as palettes. Grids or rulers can be applied to the editing space. Users might want to notice that you can place objects outside of the nominal workspace – useful for temporarily putting items not in current use without cluttering the work.

I could go on.

Suffice to say that there is enough to keep those interested exploring for hours.

Documentation is good. Aside from the ‘help’ documentation, there is a free book about using Inkscape browsable online. Now in it’s fourth edition, you can purpose e-Book and printed copies of this.

Illustrations can be saved as SVG (Scalable Vector Graphics), PNG (Portable Network Graphics), PDF (Portable Document Format) files. If you are looking for JPEG- or TIFF-format files these can readily be derived from PNG files. (For Mac OS X users, Apple’s Preview program, which comes with the operating system, will do this.)

Programmers will note that Inkscape can open SVG files, which can be generated via software for, say, representing graphs. It’s one of the values of vector graphics; they have a long history of programming solutions to generate images.[3]

Footnotes

1. Apple can update X11, so if you choose to download a more recent copy from the XQuartz project, bear in mind that Apple’s software updates can in principle over write this.

2. Bear in mind I haven’t trialled any of the commercial offering beyond a very brief use of them. I have not tried the more advanced commercial offerings at all, partly owing to the prices asked, partly owing to very limited time.

3. For history’s sake: during my Ph.D. thesis some of the software I wrote generated PostScript, which could used in a related fashion.


Other articles on Code for life:

The Roots of Bioinformatics in Theoretical Biology

The iPad: a cat toy?

Mac OS X – quickly inspecting the contents of a file

Life science want bioinformatics, but not so much e-infrastructure?