In this help article, I’ll be showing you how simple it is to add arrows to your Inkscape composition! Arrows are a great way to spice up your graphics, draw attention to items in a composition, or even demonstrate connections between objects, among other uses. Let’s get into it!
Step 1: Draw a Path
For starters, you’ll want to draw a path using the Pen Tool (also known as the “Draw Bezier Curves Tool” or “Paths Tool”), which you can access via the icon in the Toolbox (red arrow in the image above) or by using the “B” shortcut key. Note that you can create arrows from either straight or curved lines. For this example, I’ll simply draw a straight line to make things easy.
With the Pen Tool selected, left-click on your composition to create your first node (red arrow in the image above).
Next, move your mouse to the location where you’d like to place your second node, then left-click once again to create the node (red arrow in the image above). Note that if you hold the ctrl key on your keyboard while you drag your mouse, it will draw your line in “straight line mode.”
Step 2: Customize Line Settings and Add Markers to Your Path
Now that I have drawn my path, I’ll grab my select tool from the Toolbox (red arrow in the image above). This will add transform handles around my path (green arrow), which allow me to scale the path to resize it. I can also reposition the path using the Select tool if I need to by clicking and dragging the line with my mouse.
In the lower left-hand corner of the screen you’ll see the styling information for my path. Under “Stroke” you’ll see a rectangle with a color indicating my stroke color (red arrow in the above image), and next to that box you’ll see a number indicating the thickness of my stroke (blue arrow in the image – in this example the stroke width is “1.00” pixels). Because our line is a path, it uses the “Stroke” option to take on its color properties, not the “Fill” option.
If I double-click on the stroke color (again, red arrow in the image above), the “Fill and Stroke” dialogue will open (outlined in green). By default, you’ll be taken to the “Stroke paint” tab where you can change the color of the stroke. Navigate to the “Stroke style” tab (green arrow).
Under this tab is where you can change the size of your stroke (a.k.a. your line), plus add arrows to either end of your path. If I want to make my line thicker, I can type “50” in the field labeled “Width” (red arrow in the image above) and hit the enter key (you can also change the units using the dropdown to the right of this field – green arrow). You’ll see my line is now much thicker.
The “Dashes” dropdown (red arrow in the image above) allows you to change the style of your path. By default, your path will be a line, but you can change it to any of a variety of dots, dashes, or combination of dots and dashes (outlined in green in the above image). I’ll keep my path set as a simple line.
The next option is labeled “Markers” – this is where you’ll add arrowheads to your line. You’ll see three dropdowns here – one on the left, one in the center, and one on the right.
The dropdown on the left (red arrow in the image above) will add an arrow to the starting node of your path (in other words, the first node you drew when you created your path). Simply click on an arrowhead icon from the dropdown (green arrow) to add it to the starting end of your path.
Step 3: Customize Your Arrowhead
There are several default characteristics of the arrowhead (or marker) that you can customize. For example, your arrowhead will be the same thickness of your line or path. Plus, if your starting point is on the left side of your line, the arrowhead will face or point to the left. Finally, the arrowhead will be located exactly at the end of your line (rather than having some space between the line and the arrowhead). All of these default styles can be edited in Inkscape.
If you don’t want your arrowhead to be the same thickness of your line, you can change its size using the “Size X” and “Size Y” numerical fields (outlined in green in the image above). For example, if I change the “Size X” value to “10” (red arrow), then hit the tab key on my keyboard, the “Size Y” value will automatically update and my arrow will now be much larger than my path.
If I click on the original arrowhead icon (red arrow in the image above), my settings will reset back to the defaults.
Note that there is a chain-link icon to the left of the size fields (green arrow in the above image) that allows you to toggle whether or not you want the Size X and Size Y values to scale together. When unlinked, you can change the “Size X” value without it changing the “Size Y” value.
For example, if I click the icon to unlink the two size fields, then type “10” for “Size X” blue arrow in the above image), you’ll see my arrow will now resize along the X axis but not the Y axis (the “Size Y” field remains at “6.707” in this example). This makes my arrow appear sort of stretched out along the X axis. If I click on the original arrowhead icon, my settings will reset back to the defaults (red arrow in the above image).
Below the “Size X” and “Size Y” fields is the “Scale with stroke” checkbox (red arrow in the above image). When checked, your arrowhead size automatically remains proportional to the size of your path. For example, as you make the stroke of your path thicker (like we did earlier), the arrowhead becomes thicker.
When unchecked (as it is in the image above), the arrowhead will not remain proportional to the size of your path. Instead, it will be whatever size is set in the “Size X” and “Size Y” fields. In this example, the thickness of my path is set to 50 pixels, but the size of my arrow is set to 4.061 pixels and 6.707 pixels for my X and Y values. As a result, with the “Scale with stroke” box unchecked, my arrowhead is much smaller than my path and is basically now invisible.
If I hold ctrl and use my mouse wheel to zoom far in on the arrow, you’ll see that the arrowhead is indeed there (red arrow), though it is quite tiny. I’ll hold ctrl and use my mouse wheel to zoom back out. I’ll keep the “Scale with Stroke” option checked.
The next option is the “Orientation” option (outlined in green in the above image). This allows you to change how the arrowhead or marker is orientated on the path. By default, your arrowhead will be set to the first option, “Orient along the path, reversing at the start” (blue arrow in the image above). This option is why our arrowhead starts facing to the left at the start of our path.
I can reverse the direction of this arrowhead by clicking the next option, “Orient along the path” (red arrow in the image above). Now all arrows will be pointing in the same direction, which in this case means the starting arrow now points to the right.
The next option, “Fixed specified angle” (red arrow in the above image), allows you to change the angle of the arrowhead on the path. When enabled, the “Fixed angle” field below these icons will become active and you can manually set an angle for your arrowhead.
For example, I can type “-30” (green arrow in the above image) and my arrowhead will be rotated down by 30 degrees.
I’ll change the arrowhead back to the default setting by clicking the first icon, “Orient along the path, reversing at the start.”
The last icon is the “Flip marker horizontally” icon (red arrow in the image above). Clicking this option will flip your arrowhead so that it now faces in the opposite direction.
I’ll click the “Flip” icon once again to bring the arrow back to its default position.
You can also offset the arrowhead from the start of your path using the “Offset X” and “Offset Y” fields (outlined in green in the image above). By default, these will be set to 0. If you increase the “Offset X” value using the “+” icon or by manually typing in a value (I typed 5 in the above example – red arrow), the arrowhead or marker will shift to the right along the path.
If you decrease the “Offset X” value using the “-” icon or by manually typing in a negative value (I typed minus 5 in the above example – red arrow), the arrowhead will shift to the left along the path.
On the other hand, if you increase or decrease the “Offset Y” value (red arrow in the above image), the arrowhead will shift down or up relative to the original path.
I’ll change both Offset X and Y values to 0 to return to the default position for my arrowhead.
The last option you’ll see for this dialogue is the “Edit on Canvas” button just below the arrow preview (red arrow in the above image). Clicking this allows you to customize your arrowhead or marker using your mouse directly on the canvas.
You’ll see there’s several handles around the arrowhead. The one in the middle (blue arrow in the above image) allows you to reposition the arrowhead in any direction (up, down, left, or right). The square handles (red arrow) let you change the Size X and Size Y values, as we discussed earlier – meaning you can scale the arrowhead up or down. And the circular handle (green arrow) lets you rotate the arrowhead (thus changing the “Fixed angle” value we discussed earlier).
If I expand the first Marker dropdown in the Fill and Stroke dialogue (red arrow in the image above), you’ll see all the new settings based on the on-canvas edits I just made (outlined in green). If I click on the original arrowhead icon (blue arrow in the image above), my settings will reset back to the defaults.
Step 4: Add Additional Markers or Arrowheads
All of the settings we just discussed for the left marker dropdown also apply to the right marker dropdown option (red arrow in the above image). The only difference is that when you click on a marker in the dropdown on the far right, it adds a marker to the end of your path (blue arrow). Additionally, the arrow will be facing in the opposite direction (to the right) of the first arrowhead, provided that you still have the “Orient along the path, reversing at the start” icon enabled.
The arrows on either end of your path are independent of one another, so you can select any style arrowhead or marker from this dropdown and customize the settings to have it be different than the first arrowhead we set up.
I’ll keep my arrowheads set to the same style for design consistency, though.
The “Mid Marker” dropdown (red arrow in the above image) will add markers or arrowheads to all other nodes along your path that are in between your first and last nodes. Right now I don’t have any other nodes along my path, so selecting a marker from this dropdown won’t do anything.
However, if I grab the “Edit paths by nodes” tool from the Toolbox (red arrow in the image above), then double-click anywhere along my path (blue arrow), a new node will be created along my path and an arrowhead will be added at that node.
Like the other two dropdowns, you can customize the settings for your arrowheads or markers to resize, re-orient, or change the direction of your markers for these “Mid Markers.” Any setting you apply via the middle dropdown will apply to all arrows in between the first and last node you created. Here you can see I unchecked the “Scale with stroke” option (red arrow in the above image), then set the Size X value to “25” (green arrow). Now, all the arrows in the middle of my path (blue arrow) are smaller than the arrowheads at either end of the path.
Step 5: Change the Color of Your Arrows
To change the color of your path and arrows at any time, shift+click on a color swatch in the “Swatches” panel at the bottom of the canvas. For example, if I shift+click on the color red (blue arrow), it will change the color of my path to red.
Something you may have noticed is that the outer arrowheads did not change their color, whereas the inner arrowheads did. This is a bug that exists in Inkscape versions 1.1 and 1.2. To fix this, you can decrease the size of the stroke width by clicking the “-” symbol in the “Width” field, then increase it again clicking the “+” symbol (green arrow in the above image). The arrowheads should change color with this small change (hopefully they fix this bug in the near future).