Using Inkscape to edit PDF documents and create technical illustrations

Inkscape is a free open source program that lets you edit PDF documents and create high quality illustrations. It is extremely useful for creating technical illustrations, but it can also be used to create other graphic effects. For example, the buttons on this page were created using Inkscape.


If you click on the fractal snowflake image on the right, it will take you to a short tutorial explaining how to use Inkscape to create fractal images.

Inkscape is available for Windows, Mac, and Linux at http://www.inkscape.org/download/?lang=en.

There are a wide variety of Inkscape resources on the internet. The first reference you'll want to consult is Tavmjong Bah's manual Inkscape: Guide to a Vector Drawing Program which is available both online and in hardcopy format. He also has an animated gear clock that is made using Inkscape and Javascript. (The clock doesn't work under Internet Explorer but works fine under Firefox.)

If you are more of a visual learner, then you may appreciate the screencasters Inkscape tutorials which are video tutorials arranged in a vast series of video episodes. Scroll down for a more detailed listing of these video episodes.
The Inkscape tutorials weblog also has many useful tutorials on how to create a wide range of images including this tutorial on creating a coffee cup using Inkscape.

Inkscape can be used to create very detailed technical images, as well as importing images and text from PDF files. If you click on the image of the heart, you'll see a sample technical document describing electrocardiograms. The circuit diagram was obtained from the Analog Devices AD620 instrumentation amplifier data sheet which is available from the Analog Devices web site http://www.analog.com/static/imported-files/data_sheets/AD620.pdf. The schematic diagrams of the heart and ECG trace are both available from the Wikimedia web site http://commons.wikimedia.org/wiki/Main_Page which boasts a large number of creative commons scientific images.

It is also possible to add math equations in Inkscape using LaTeX notation. To do this, you will need the textext program available at http://www.elisanet.fi/ptvirtan/software/textext/index.html as well as the pstoedit program. I have not personally tried to use this as I usually incorporate Inkscape figures into my LaTeX documents, rather than incorporating LaTeX equations into my Inkscape figures.
Although the electrocardiogram example uses a schematic from a pre-existing document, it is also possible to draw circuits in Inkscape using the snap feature which will align objects to a grid. This is easy to do if you already have a pre-defined set of circuit elements which can be joined together to build complicated circuits.
You can also use the program to layout circuits on printed circuit boards. The PC board shown on the right is based on Art's minimum theremin and uses a model 777 prototyping board available from Futurlec.


The screencasters Inkscape tutorials are a wonderful set of online videos that demonstrate a number of techniques in Inkscape.
Here are some of my favorite episodes.

Episode 005 A good introductory tutorial on how to make mirror image text. This demonstrates many basic techniques, including gradient fills, which are very useful for creating advanced looking images.
Episode 006 Shows how to create the image of a file folder. Shows how to combine paths (shapes) as well as blurring and moving images from one level to another.
Episode 013 How to make funky-looking text. Shows how to convert text to paths, and then dynamically resize the path.
Episode 014 How to place text around a circle. Text can be aligned with any curve, but this shows how to align the text to a circle.
Episode 015 Adding perspective to an illustration. A very simple technique provides 3D perspective to graphical objects.
Episode 017 How to make glass buttons. Now you can make your own 3D glass buttons like the ones I have on my web page.
Episode 035 Perspective reflections. Shows how to use masks in Inkscape to create reflections.
Episode 036 Rain drop effects. Uses gradients, alpha channel and differences to create very convincing raindrops.
Episode 041 3D text using interpolation. Inkscape has the ability to interpolate between two different objects which can be used for a variety of effects, including making 3D text.
Episode 043 Pin buttons. Very similar to the raindrops, but more convincing and effective.
Episode 044 Layers. An introduction to Inkscape layers. Layers provide a very effective way to arrange multiple objects on a single page.
Episode 045 Snapshot mosaic. Breaking an object into several pieces and then putting those pieces back together to give an unusual effect. A modification of this effect is useful for desktop publishing.
Episode 047 Creating a clock in Inkscape. This is not a functional clock, although it is possible to make a functional clock using Inkscape and Javascript.
Episode 050 Creating a sparkle effect. This also teaches a number of useful graphical effects.
Episode 058 Filter effects. Filters provide a very convenient way of automatically combining together a number of Inkscape effects.
Episode 060 Live envelope effects. This is like the perspective effect, but provides a more general method for changing an image.
Episode 067 Spiro - provides a way to create very smooth hand-drawn curves with great ease.
Episode 068 Halftone - how to make a halftone image.
Episode 077 Desktop publishing. Inkscape is capable of doing basic desktop publishing, although you'll probably want a more advanced product if you are planning on doing anything serious with it.
Episode 086 Web presentations using JessyInk. JessyInk is an extension for Inkscape that lets you create PowerPoint-like presentations that will work over the web. You can see a sample JessyInk presentation if your browser is capable of displaying SVG graphics.
Episode 096 Axonometric grids. Grids provide a very convenient method for producing 3D technical illustrations. If you understand how to use these grids, then it is a simple matter to use rectangular grids for 2D technical layouts like circuit diagrams.
Episode 098 A few simple text treatments. Ways to alter the appearance of text to make it look more professional.

Inkscape is capable of reading a large number of image file formats including Scalable Vector Graphics (SVG), Portable Document Format (PDF), Encapsulated PostScript (EPS), Adobe Illustrator (AI), Windows Bitmap (BMP), Joint Photographic Experts Group (JPEG), Graphic Interchange Format (GIF), Tagged Image File Format (TIFF), Windows Meta File (WMF), Enhanced Meta File (EMF), Portable Network Graphics (PNG), many different Corel Draw formats (CDR, CDT, CMX, CCX), Icons (ICO), and many other formats. The bottom line is that you should be able to read and edit a wide range of graphical image formats using Inkscape.