Inkscape.org
Tips, Tricks, and Tutorials ComicBook-style Talk Bubbles
  1. #1
    BobSongs BobSongs @BobSongs
    😀

    Let's create some talk bubbles where the tail, the part that points to the speaker, is flexible and does not need to be redrawn.

    Open Inkscape to a new document. If you're working with an image file, add it to the document and set it on its own layer. (To open the layers control box, use Shift+Ctrl+L.)

    Create 4 specific layers for the talk bubble. Name them:

    • Text
    • Top
    • Tail
    • Bottom

    The names are not important; they're just reminders to help keep our focus.

    Click the "Bottom" layer to make it our working layer.

    Create a shape large enough to contain the text necessary. In my case, I'll be using an Oval with the help of the Circles tool (F5).

    Open the Fill and Stroke (Shift+Ctrl+F) dialog box, click the Stroke Style tab and adjust the Width to double the desired thickness. (In my case 2 millimeters for a final thickness of 1 mm.) Make any other adjustments here such as Dashes, etc.

    Click the shape you created and copy it (Ctrl+C).

    In the Layers tool box, click the "Top" layer to make it our working layer.

    Use Ctrl+Alt+V to paste the object right on top of itself. It will appear as if nothing happened. However, we now have a copy of our object in the "Top" layer that we can modify.

    With our object selected, click the Fill and Stroke tool box and change the object's Width to 0 mm. This will make the object appear to have a 1 mm stroke width. Exactly what I'm looking for. We're not expecting the stroke to disappear entirely.

    In the Layers tool box, click the "Tail" layer to set it as our working layer.

    Using either the Freehand tool (F6) or the Bezier tool (Shift+F6) create a "V" shape or a triangle. Ensure the "fill" is the same colour as the object in the "Top" layer. Set the Stroke to half the Width of the original object. In my case: 1 mm.

    Final steps.

    Move the tail until the open end of the angle or the shortest side of the triangle is tucked between the "Top" and "Bottom" object. This should make it appear to be integrated into the talk bubble. Excellent. Adjust as needed.

    Now add the text desired and shape until it fits perfectly.

    Bonus Tip #1

    Duplicate the "Top" and "Bottom" shapes and move them together to form a second bubble area.

    Bonus Tip #2

    To give your "Tail" triangle a sharper tip, raise the "Join" to about 13 or higher.

    Done!

    10
    09
    08
    07
    06
    04
    03
  2. #2
    Gerald Stiehler Gerald Stiehler @mondspeer
    *

    Great idea. It even works without layers, just by stacking the different objects. 
    And it works with non-regular shapes as well. 

     

    Bubbles 2
    Bubbles 1
  3. #3
    scruffyeagle scruffyeagle @scruffyeagle

    I make talk bubbles by just using the bubble and a triangle.

    * Make an oval, then use "object to path".  This lets me make bulgy segments between the nodes, to fit my whim.

    * Make a triangle using the bezier curves tool for 3 connected line segments enclosing the space.  Use "object to path" on it.

    * Set fill & stroke as desired, making both bubble & triangle have the same values.

    * Select the triangle, then click to work with nodes.

    * Click on the line segment at the side which will overlap the bubble, then delete that segment between nodes.

    * Clicking on the 2 other lines allows them to be pulled into curves which meet at a point (opposite the segment which was removed).

    * Selecting the object which began as a triangle allows moving it to just overlap part of the bubble's perimeter.  If necessary, click to raise it to the top so that overlapped portion of the bubble's perimeter is no longer visible.  Because one of its bordering segments is missing, it will look as if there's no division between the bubble & the spout.

     

  4. #4
    Xav Xav @Xav👹

    A slight variation on creating the "Top" and "Bottom" shapes from the original post. This can be done with layers, but is a little easier if all the objects are kept on a single layer, so that's what I'll describe:

    1. Create the "Top" object with a temporary fill colour that you can see.
    2. Right click on the Stroke swatch at he bottom left of the window and select "Unset stroke".
    3. Create a clone (Alt-D) then set the stroke width and colour on the clone (as above, double the desired stroke width). This will be the "Bottom" shape.
    4. Move the clone below the "Top" shape (PgDn) in the z-order.
    5. Select the "Top" shape and change the fill colour as necessary.
    6. Continue as above for adding the tail and text.

    The advantage of this approach is that you can change the shape of the top object, and the bottom one (and hence the outline) will update to match.

     

    Though for what it's worth, in practice, I don't perform so many steps when creating my "Greys" or "Elvie" comic strips. What I do is less flexible though, so the method described above might be a better option for a lot of users.

    • For "The Greys": As an aesthetic choice, the Greys usually have rounded-rectangle speech bubbles. I just draw a rounded rectangle, convert to path, click the side I want to add the tail to, press "Insert" twice, then adjust the node positions to drag out the tail and give the shape I want.
    • For "Elvie": These are usually oval bubbles, created with the Ellipse tool. I draw the tail roughly in place with the Bézier tool, overlapping the edge of the ellipse. We go through numerous iterations of each strip, during which time the size and position of the bubble and tail will move. When we're ready to finalise the strip I use Path > Union to join them together permanently.

     

  5. #5
    BobSongs BobSongs @BobSongs
    *

    It has been quite some time since I've browsed through the forums. Thanks, Xav, for the update (be it over a year ago 😀). This particular update works extremely well.

    I agree 100% that the entire structure does not require "layers", as originally proposed or suggested. This can be done without such a prerequisite. This is, of course, more of a "work flow" thing. It's always helpful when I can better manage the source material.

    Be that as it may, your suggestion improves the entire tutorial. Changes to a word bubble are more likely to be called for when working for a client. This is an excellent solution!

    (Using Inkscape 1.2.1 (9c6d41e, 2022-07-14) on MXLinux19)

     

  6. #6
    Xav Xav @Xav👹

    Thanks for that feedback @BobSongs. It's always great when people are open to others chipping in with suggestions and modifications. As well as a better or more flexible final result, there's a lot to be learnt along the way from seeing various different approaches to tackling the same problem.