Wednesday, May 22, 2013

Drawing in perspective with Inkscape

When you come across with perspective for the first time, in the beginning it seems that this artistic tool is very difficult to master. But in fact, everything is much easier — you just have to understand what it represents. And eventually tenacity and practice will do the trick.

To begin with, let’s discuss a little theory. Perspective is used for drawing three-dimensional object in the two-dimensional plane. Its use allows to visually enhance your picture. There are many types of perspectives, but we will examine the creation of the most basic ones.

The first thing we need to know in order to construct a picture in perspective is the location of the horizon line — the line where the sky seems to meet the land. Despite your position, this line will always be at your eye level. Then, on the horizon line we place vanishing point, wherein auxiliary lines come together. By using these vanishing lines, we can build a three-dimensional object in perspective. Lines which are not absolutely vertical or horizontal will come together at a vanishing point.

To create a perspective in Inkscape we can use helper lines — guides. This practice is useful if you are just starting to learn the perspective. But if you're already familiar with it, then perhaps the following Inkscape tools can help you make it easier to construct.

I. Perspective using 3D Box tool

By default, using the 3D Box tool (Shift + F4) we can create a box in two-point perspective (a box stands at an angle to us). Vanishing points will be attached to the vecrtial edges of the page.

H — horizon line
X — vanishing point of the left side of the box
Z — vanishing point of the right side of the box
There is no vanishing point in the Y direction, because these lines are absolutely vertical and parallel to each other.

Vanishing points at two-point perspective should be located far enough from each other. If they are placed too close, the result will be distorted.

In order to create a three-point perspective (when the height and the depth of the box are visible), we need to toggle vanishing point in Y direction from finite to infinite. It should be noted that at this form of perspective the third vanishing point is placed beyond the horizon line.

One-point perspective is the easiest to construct (the box is looking at the viewer). To create an object in this perspective with 3D Box tool, toggle vanishing points in X and Y directions from finite to infinite, and set the following parameters: X: 180, Y: 90. Vanishing point in the Z direction needs to be toggled to finite and placed anywhere on the horizon line.

II. Extension “Perspective”

In order to transform a path in perspective we need to use the extension with the same name. But before that, we need to prepare a few things:

  • the path that will be used as a guide
  • the path (or group of paths) which we will transform

Let's take, as an example, the text object. First, create a text object (F8) and convert it to a path (Path> Object to Path). This action will cause the complete loss of the ability to edit object as a text object (change font, spacing, spelling, etc.). But this step is necessary because this extension only works correctly with paths.

After converting text to a path, we get a group of objects where each letter is an individual path. You can leave the group as it is, but you can ungroup it (Shift + Ctrl + G) and go to Path> Union. This action will allow us to transform the text into a single path.

Now, let’s create a guiding line with Bezier tool (Shift + F6). The path should be created in certain sequence depending on the desired result. You need to start drawing a guiding line from the left bottom corner and continue in a clockwise direction.

Finally, choose the path for transformation and guiding line (by holding Shift down), and then go to Extensions > Modify Path > Perspective. Voila, our text in perspective is ready! Guiding line now may be deleted.

Besides the text, you can use this method to transform circles, stars, regular polygons and other objects in perspective. Note! They all must be converted to path.

III. Perspective using the Path Effect Editor

Another way to transform the object in perspective lies in the Path Effect. For a start, as in the previous method, let’s create a guiding line. Convert the object that you want to transform to a path (Path> Object to Path). Then, go to the menu Path> Path Effect Editor and add the “Envelope Deformation” effect.

After this, bend each path one by one according to your guiding line. For more convenience, you can enable snapping to paths. Unfortunately, the result of using this method may be less accurate than by using the extension “Perspective”.

Note by brynn: This way only simulates a true perspective. True perspective affects not just the height of an object, from side to side. It also affects widths (of vertical or near vertical elements). Objects get more and more narrow, the farther away they are. As an example, the vertical portion of the F, R, I, L, and E, in the word "FRAGILE" would get smaller and smaller towards the "far end" of the word (depending which way you "stretched" it).
Of course, on a computer screen, this will usually be a very small difference, and often not even noticeable by the viewers of the image. But there are times when it makes a very noticeable difference. For example, in photorealistic or technical drawings, it could be important. 
Adding perspective won't only vary your picture, it will also bring an element of realism. Constructing perspective without knowing the basics is bound to cause mistakes. And everyone will see the unnaturalness in your drawing. So train yourself and experiment. Knowledge about perspective is necessary for any artist.

That’s all! If you’ve found any mistakes in the text or you have a better solution feel free to comment. Thank you!

>> Download "Road in perspective" source file

*This tutorial in other languages: Russian

If you translated this tutorial, please provide a link to the translation in the comments.


  1. Fantastic Tutorial. I love how you provide some theory on perspective views, then provide 3 of the best ways to achieve it in Inkscape!

  2. It was very helpful, thank you! :)

  3. This comment has been removed by a blog administrator.

  4. I have a 3D monitor drawn in Inkscape and I'd like to add a screenshot into the region. I have tried to skew, but the shape is too irregular. I have also tried to apply an envelope (Extensions -> Modify Path -> Envelope), but it seems not to work with Bitmaps.
    create 2d barcode labels in word

    1. You might use Gimp to prepare bitmap beforehand, since listed options are applicable only for paths.

  5. Big thank you!! It's really helpful. I love the third method most. The first method is very handy too.

  6. Cool tutorial, good perspective view can be generated from 3D objects. I use creately online diagram software for this purpose.

  7. This comment has been removed by a blog administrator.

  8. This comment has been removed by a blog administrator.

  9. This comment has been removed by a blog administrator.


  11. This comment has been removed by a blog administrator.