Note: I've been having a dickens of a time getting all my posts to show up as searchable in Technorati. Thus, a repost of this Draw blog.
Sure, you like the nice little triangles and double arrows in the list of arrowheads you get with OpenOffice.org. They're nice. They point.
But sometimes you need a little something extra. Something fun, something for your schematics, something for your UML diagram (UML is a little tough to do, more on that in other blogs), something you just need.
Here's how to create your own arrows, or line ends (I'll be using the terms interchangeably).
First, though, the basics. How do you apply them? How do you get the line ending, the arrowhead, of your choice, onto a line?
Applying Arrows and Making Them Big Enough to See
You have a line. You want to put an arrow on the end or you want to change it. How do you do it?
First, draw the line with any of the line or curve tools on the Drawing object bar. Be sure it's selected.
Then apply the line end. The quick way is to click on the dropdown list at the top of the work area, and just select what you want for each end of the line.
However, the default size of the line ends is really small. You'll usually need to make the end bigger. So select your line, choose Format > Line, and in the far more powerful window that appears, select your line end styles. Select the size, and while you're at it you can change line styles too. Click the image below to see a bigger version of the window.
Loading the Extra Arrows
The arrows that OpenOffice.org comes with are stored in .soe files, usually in your openoffice.org\user\config directory. There are two by default; you can only have one loaded at once.
NOTE: You can put all your line ends that you create yourself in a separate one, if you want. More on that later.
The style files are arrowhd.soe and standard.soe. Standard.soe has hardly any. Arrowhd.soe has a bunch more. To load a different style file, choose Format > Line, click the Arrow Styles tab, and click the Load Arrow Styles icon.
In the dialog box, select a different style file and click OK.
Creating a Basic Arrow
Here are the rules. You can create a line end with any character, polygon, contour, curve, or line in OpenOffice.org. This means most of the shapes in the drawing toolbar, like the puzzle piece, though some like the smiley face won't work. However, basically if you just draw anything using the drawing tools, it'll work.
All of these will work as line ends. The first three will end up filled.
If you find yourself with a shape that you think should work but doesn't, or just a shape you want to use of the wrong type, convert it to the correct type. Select it, right-click on it and choose Convert, and select Polygon, Curve, or whatever works for you.
You can also use the line tools to draw filled shapes, like the angled straight-line tool that I used to draw this clumsy-looking crown shape (drawn with grid showing).
When you draw a shape, you might want to have the grid on so it'll look reasonably regular. Choose View > Grid > Display Grid, and Snap to Grid as well.
So let's assume you've got your shape. I'm going to use the crown. Draw the shape right-side-up, by the way.
Select the shape and choose Format > Line. Click on the Arrow Styles tab. The Add button should be enabled; if it isn't, you don't have the right kind of shape drawn. Click the image below to see a bigger version.
Click Add, and name the line end something. (The line end will be saved in the currently loaded .soe file.) Click the image below to see a bigger version.
NOTE: Line ends are always filled unless you go to great lengths to avoid that. I cover that later in this post.
Now the shape will show up in the lists with the other line ends.
Creating an Arrow With a Special Character (or Any Letter)
If you want an arrow that's shaped like the greek symbol for pi, you can do it.
Use the text tool to draw a text box.
Click inside the text box and choose Insert > Special Character. Find the symbol you want and click OK. (Or just type a Z or a W or whatever character you want.)
Make the character bigger if necessary with the font size dropdown list, and change the font as well if you want.
Select the text box, and then just create the line end as I described above.
You can't use a word as a line end, by the way, just a character.
Here's a couple lines with the pi ending and another special character.
Creating Your Own .soe Line Styles File
If you want your own styles in a separate file, here's what you do. Before you start creating, just choose Format > Line, click the Arrow Styles tab, and click the Save File icon. Name the file something like mystyles.soe and click OK.
That new styles file is now loaded, with the default arrow styles from the standard.soe file. Now just create your line ends as you would normally.
Draw a Line With an Arrow in the Middle
You can't actually do a single line with an arrow in the middle. But you can do two lines, with an arrow at the end of the first one. To make sure they don't separate when you move them, use the connector lines.
Here's the connector line palette.
Here are two connector lines, creating the impression of one line with an arrow midway through.
Creating Unfilled Arrows
Thanks to the clever folks in this discussion, I discovered that you can fool Draw into thinking something's closed. Well, it is closed, but you do it all a little differently. This approach is a bit of a pain in the tookus but it works, and once it's done, it's done.
Display the grid; choose View > Grid > Display Grid.
Use one of the two straight-line drawing tools; the squarer one is better.
Draw a triangle for this practice run. Start drawing a normal triangle, but instead of connecting after the third line, double back as shown.
Then complete the triangle so that it's actually a very long thing rectangle bent twice to form a triangle.
Click the Edit Points icon on the Drawing toolbar at the bottom of the work area.
Zoom into about 400%. (Choose View > Zoom.)
Drag each of the two points of the disconnected end toward the other line, so they're almost but not quite touching.
Zoom back out. Click the Edit Points icon again to turn off that function.
Now just create the line end as you normally would.
Here's a picture of the triangle, and a line with the line end applied.
Note that with unfilled shapes, you get the line intruding into the shape very slightly. (Mark Center in the Lines window to change it from definitely intrusion to very slight intrusion.)
In the Name of All That Is Holy, Use Graphics Styles
Once you've got a line that you like, with the ends you like, the size you like, with the line width and type you like, etc. that you're going to reuse, SAVE IT.
NOTE: Graphics styles are like the paragraph and character styles in Writer, and combine all these attributes as applicable. Your specific arrows that you create are also called arrow styles, and are saved in the .soe file that's loaded when you create it. But when you're combining a bunch of line and arrow types and widths and sizes, then those attributes are stored in a graphics style in the Styles and Formatting window. That's what I'm talking about here.
Select your line and choose Format > Styles and Formatting. Click on the New Style From Selection icon with the green + sign.
Name the style something and click OK.
Now, the next time you want that kind of line, draw the line, select it, choose Format> Styles and Formatting, and find the style you created in the list. Double-click the style name. All that painful formatting you did last time will be applied instantly this time.
Styles you create stay in the document you're in. To get a line style from another Draw document, just copy a line with that style, or use templates (which is a whole nother topic).
That's all there is to applying and creating your own line ends! Simple, huh?