I would like to wrap text labels into shapes that are non-rectangular - hexagons, trapeziums etc. But OG always wraps the text to a rectangular text box. Generally this box is inside the shape, although sometimes is lets text overlap the edge, which means I can fit in less text, and doesn’t look at professional. Is there a way to wrap text in a non-rectangular box?
(I have search for variations on ‘text wrap’ in the forums and this question does not seem to be answered - although it seems so obvious that I worry I have got the phrasing wrong, apologies if so).
Looks like the default set is to allow the text to overflow the shapes, but you can control this in the object inspector. I believe the settings you are looking for are under Text Position, the 2nd row of buttons on the left, you want to pick to “crop text to shape” and then set up specific margins below that.
Thanks Lanette. That does indeed stop the text overlapping the edge of the shape, but it also leaves lots of space in the shape that could have text in it (at the top where there shape is wider. What I’d like is for the text to wrap into a non-rectangular box.
In this example with a hexagon I’d like to get what is on the left (which I’ve done with manual line breaks; but I can only figure out how to put very wide borders such that the words are in a small rectangle in the middle. Is there an automated way to do this?
When it comes to lines of text, there are tradeoffs between keeping longer words together, or splitting them up with hyphens & line breaks to better accommodate a consistent shape. Line breaks, hyphens, and controlling the offset percentages are all options to consider for special cases with typography like a shape with uneven edges or curves. What I might do in your situation is uncheck the default offsets checkbox in the object inspector under text positions, then tweak them a bit so that I can control the edges a bit better.
You can also allow hyphenation under the Format menu under Text. Hyphenation is disallowed by default, because for many diagrams it isn’t desired. With longer text, allowing hyphenation is one way to better wrap to the shape.
Here is an example, and notice that I have put in a hyphen to help my spacing, I have used control + enter to make a line break intentionally. In a case as custom as this one, some hand-tweaking is needed to get the desired visual look. I could break up the word “correction” using hyphens and I could also put the word “and” on the bottom line if I wanted to go further following the shape.
Thanks this is a very helpful explanation, and I appreciate the trade-offs. It sounds like I will have to work manually. I wanted to check is I wasn’t missing the an ability of OmniGraffle to automatically flow text into non rectangular spaces, and it looks like that isn’t available. i.e. a feature similar to what used in he InDesign and Quark - see for example here:
Yes, please send a feature request by email to email@example.com. I am familiar with InDesign’s text wrapping, and there are some really complex options including custom text wrap you can alter by the point for customizing your text wrap beyond the current shape. A link back to this post or an example document would be good to include in the email too.
If someone else in the forum also would benefit from additional text wrap options, please send us an email as well so that we can add your +1 to the suggestion.
v7.10 released in March 2019 added a new Fill Shape with Text option. This does what is requested in this thread. If you are looking for additional text wrapping options, please contact us with the details of what you’re looking for. Thanks!