Tutorials‎ > ‎

Comic making in MyPaint, GIMP and Inkscape

Comic making using MyPaint, GIMP and Inkscape



Comics, or 'graphical novels' are perfectly suitable to do using only open-source software. 

This tutorial relates how I currently go about creating a comic
page on the computer. It's a workflow guide; I will not go very deep
into comic-making theory here since you will probably use a different
style anyway. If you want more help on the craft of comic-making, I have 
given a list of litterature at the end of this tutorial.

I use the following programs: 

GIMP - this is used for all bitmap manipulation of the image
InkScape - I use this for text and frames, since it currently gives much more
control over such things than GIMP does. 
MyPaint - This is my main program for painting/drawing the comic

For this tutorial, I'll assume you already have a decent knowledge of
GIMP, but will try to give some useful hints on using Inkscape and
Mypaint. I use a graphics tablet for this, and I recommend it,
especially for quickly and conveniently writing a graphical comics

The example comic I'm showing is a black&white&red story I call Where
Red Apples Lie
 (you don't need to know anything of it to follow
the tutorial, but you can find it here).

Planning the comic

First things first - you need to have an idea for a comic, and some
rough feeling for the style you want to draw it in. For your first few
comics I suggest you plan short! Think up a short-story that is
finished in a just a few pages and that you know you'll be able to
finish. It's very tempting to start that big, epic saga on your first
try - avoid this; making comics is quite different from "normal"
artwork, and requires a whole complementary set of skills. Do short
stories first to train.

The Script

There are basically two ways to write the comic's script. The first
way is to do it in classic script form, the same way a movie or
theater scriptwriter would do it. This is a time-honoured style and a
common one, especially when the author and artist are two different
persons. In such a script you define in words how each page and should
look, detailing in words the action and dialogue.

The second way (and the way I do it) is to do a graphical
. This means that 
we'll sketch each page on a small scale and scribble down
the text directly on the sketch. If you don't have a graphical tablet,
you are best off doing this part with pen & paper. I'm using MyPaint.

Using Mypaint to create a graphical script


MyPaint (http://www.mypaint.intellinux.com) is a minimalistic, open-source painting
application. It focuses solely on painting and has no
"photo-manipulation" features at all; you are directly encouraged 
to use GIMP for all such things. Its main appeal lies in its vast
range of artistic brushes and its very fast
work-flow that allows you to paint with no distractions. 

(comictut03.png) (comictut02.png)

Brushes in MyPaint are ordered in groups, such as "Experimental",
"Deevad" etc. There is also an initially empty section called
"Favorites". Above you see the four brushes I've pulled into
favourites and which are the only ones I use for this tutorial. 


MyPaint has an "infinite canvas", which means that there is no fixed
edge to your painting - the saved area will expand to fit whatever it
is you are drawing. It also allows for different backgrounds to be
repeated on the canvas. There is a a special background called
comic-script which I created especially for the purpose of
comic-scripting; it comes with Mypaint by default (it's one of the
backgrounds with a + on it). 


Having selected the right background, you will have an endless
tapestry of comic pages before you, with ample space between them for
giving notes. Each page also has faint guides for marking up panels. 

Remember that this is a script, so work fast and sketchy. The idea is
to quickly try out different page layouts. Change your mind, try
different pages - mistakes are cheap and fast to fix at this stage. 


Above I show a few pages of script. I sketch the placement of
each panel and each person's rough position and expression. Text
frames are simply marked with letters, the texts are scribbled directly
next to each page.




The pages ended up in a long column, but since MyPaint has not special
form to its canvas, I could just as well have expanded sideways or
made a big square. 

Save your script as a png file. Time to move into
Inkscape for setting up the pages proper. To be able to refer to your
script, keep MyPaint open or, which might be more convenient, open the
sketch in a normal image viewer next to your open Inkscape window. 

Inkscape for frames and lettering


Inkscape (http://www.inkscape.org) is an open-source vector graphics program and as such
is quite different from both MyPaint and GIMP which both deals with bitmap
graphics. An example of the differences is to look at a straight line
drawn at an angle. In a bitmap program, this line will appear jagged
once you zoom in enough. In 
a vector program, a mathematical function describes the line, and no
matter how far in you zoom, the line will always be perfect. The line
is also identified as a unique object and allows you to modify it at
any time (in a bitmap program, the line is where it us unless you undo). 

Whereas GIMP will come with better text facilities in 2.8+, Inkscape
have several other advantages over GIMP for lettering, such as text effects and
easy creation and moving of frames and speech bubbles at any time. 

This is not a tutorial on using Inkscape, I will briefly to through
just the things we need for now. 


The most important requester we'll need is the Fill and Stroke
requester. It allows you to edit the colour, outline, transparency etc
of the currently selected object. 


The Fill and Stroke window (FaS from now on) opens next to the
canvas. To test things 
out, use the rectangle tool (from the left vertical toolbar) and make
a rectangle. You can adjust this at all times by pulling at its
corners. In FaS, go to the Fill tab and clear any eventual
fill (alternatively, make sure the Fill is a solid white). Next head to the Stroke paint tab and make sure it's a solid
colour - this controls the outline of the rectangle. The actual colour is easiest picked from the row at the bottom
of the window. If you don't see anything at the point, it's because
the outlines (the "Strokes" in Inkscape lingo) have zero width. Read
on ...


Finally, head for the Stroke Style tab and pick how wide you
want the outline to be. When you add width here you should see the
rectangle's lines updating in real time. This is all you need to know
to create all panels of a page. 

Next we will mention how to make a speech bubble. First, use the
circle tool to make a oval of the size you want. Like the rectangle
earlier, use FaS to adjust its look. A speech bubble traditionally has
a little "tail" on it connecting it to the character speaking. We'll
create that next. 


The pen tool will allow you to make nice arcs and lines on the
page. Drawing with it, you can place "nodes" on the page that you
later can pull around to adjust the line shape using the adjust node
tool to the right.


Using the drawing tool, make an open-ended "tail" and make sure it
overlaps with the oval. 


Next select both oval and tail by clicking on them in turn with the selector
(the arrow tool at the top of the toolbar) while holding down
Shift. You could also drag out a selection around them. 


While they are still both selected, go to the menu Path->Union. This
merges the selected shapes into one.


One nice speech bubble object. 


Now that we know how to do rectangles (panels/captions) and speech
bubbles in Inkscape, it's time to organize stuff on the page, based on
our script. Text is added with the Text tool (duh). It's often easier
to write in all text first and then put frames around them. Experiment
with using FaS to have the rectangle filled with white. In the
Object menu you can move objects (such as text and rectangles)
to different "depths" so as to have the right thing appear in front of
the other. Once you are happy, you can "group" the text together with
its frame using the menu Object->Group. That way you can move
text and frame around as one item. 

Warning: Since we want to import this into GIMP later, there is a
text incompatability you should be aware of: When adding new text, do
NOT pull out a text area with the text tool before you start
writing. If you do, it seems GIMP will import that text area as solid
black, completely useless. To avoid this, just click a single click with the
text tool and let the text area expand as you go.


Here I have placed a rather complex layout of frames and captions on a


Once you have placed all frames, text and captions/bubbles, we need to
export this to a bitmap that GIMP can read. Use the File->Export
 to save the page at a high resolution (at least
300DPI). I save as PNG to avoid any data loss at this point. 

Next, close Inkscape and open GIMP. 

GIMP for prepping the page


Loading the exported PNG page into GIMP, I now want to create a "mask"
out of the captions. The idea is that we shall be able to work on the
art without disturbing the text or worrying about drawing "outside the
frame". The solution for this is of course to make it a separate
layer. In the right page I've used GIMP's select-region tool to delete the
areas of the comic where art will be, while filling white in the areas
where there will be text or margins. 

This is another, more straight-forward example. 


Next we open our comic script in a new window. I simply cut out the
script page I want and paste it onto a new layer under the
frames. From there I simply scale it up to fill the page. This is just
to be a rough guide for the future art, so the exact positioning is
not critical (you could also just look at the sketch and work from
that if liked that better). I also lower the opacity of the sketch
layer a lot. 

Since I want to do the actual paint work in MyPaint from here on, we
need to save in a format that preserves layers and which MyPaint
understands. This format is called ORA (OpenRaster) and is an evolving
standard. GIMP cannot save ORA by default, but there is a special
plugin MyPaint devs released to do just that:
http://registry.gimp.org/taxonomy/term/797 This requires Python
support in GIMP; just drop it into a place where GIMP looks for
plug-ins (it's settable in preferences). 

Back to MyPaint now. 

MyPaint for the artwork


Here I have loaded a previously prepared page into MyPaint. On the
left you can see the three layers I'm using; All art will go into the
Ink layer, underneath the Frames (which contains all text and panels)
but above the sketch (which I'll hide once I don't need it anymore). 

I only use very few different brushes for this - those are shown in
the brush list on the right. I have moved them all into "Favourites"
to make them easily accessible. The exact brushes you need will depend
on your style, if you want colours or not and so on. In the following
examples I'll just show some examples.


Here we see an almost finished art piece in black&white&red. The
sketch is still visible on the layer below - it's quite clear here
that the script is really just a sketch! Greyscale is mostly done with
a flat brush, using a blending and modelling brushes to make smooth


Faces in greyscale can very effectively be created by filling the eye
sockets with black and then gradually brighten them a bit to show the
eyes. Above is a "cinema-style" sequence of images, conveying a
passage of time. 


For close-ups one might need a finer brush, like the kabura
inkbrush. But a hard, flat brush works well too. 


This is an example of first
showing the scene (with background, to show the surroundings), then
move in on details. Note that in the second panel there is no
background to emphasize the character details. A background is not
needed since the position is clear from the previous panel. 


GIMP for final adjustments

Once a page is done, save it in MyPaint and move it back to GIMP for
final adjustments. GIMP can do lots of adjustment operations that
MyPaint cannot, such as cropping the image to a suitable size and with
wide enough margins. 

We are done! Save your image as PNG for printing or a high-quality JPG for web

Good luck with your comics!

Appendix: Suggested reading

There are many books to read on the craft of comics and
I can recommend a few of them dearly (and in this order):

  • Understanding Comics - the invisible art (Scott McCloud
    1993) - great as a starting point.
  • Making Comics - Storytelling secrets of comics (Scott
    McCloud 2006) - a complementary book to the previous one. 
  • Framed Ink - Drawing and Composition for visual
     (Marcos Mateu-Mestre 2010) - great instruction on
    how to build up movie-like scenes (author is a movie storyboard
  • Writing for Comics with Peter David (Peter David 2006) -
    focuses on the story and script aspect of comic books. 
  • Comics and Sequential Art (Will Eisner 1985) - a classic
    work, one should at least have read it even though I think McCloud is
  • Graphic Storytelling and Visual Narrative (Will Eisner
    1996) - Eisner is the "grand old man" in this field. Worth a read.
The above books cover the making of comics (graphical novels) but they
are not instructions on drawing. There's a plethora of books on
anatomy, drawing and painting out there if you want that.