A frequent source of frustration is how leaders relate to the information in tags. The more complicated a tag family is the harder it becomes to ensure the tag's leader(s) will align with the graphics or text it has. A leader connects to the midpoint along the overall extents of a tag's graphics and labels. Imagine a rectangle that surrounds all of the graphics in your tag, the overall extent of that information. The leader connects to the midpoint on this rectangle on each of its four sides as you drag the leader around the tag.
It is possible to play tricks with invisible lines to increase or decrease the perceived size of the tag so this elusive midpoint leader connection point can be controlled. It takes some experimentation and only one little circumstance we didn't anticipate to mess things up. This is just a simple example, using the stock room tag family, that illustrates how the leaders are too arbitrary.
They work okay for a couple instances but for others they don't. In this case Volume isn't getting calculated at the moment so the information displayed is too long and it messes up the leader location. In a big enough room the calculated volume value could easily be long enough to do the same thing to the tag.
We want/need a definitive way to tell Revit where a leader should connect to the tag information. I recently ran across a suggestion that I'd love to see happen. You probably already know that Revit MEP content uses connectors to define where pipe/duct/electrical relationships start or connect. What if we had a Leader connector element we could add to our tag families? Something like this perhaps?
I've added numbers to define the priority for the leader connectors, like adaptive point families have for example. As I drag a leader around a tag Revit should adjust the leader shoulder to connect to the next numbered connector. For those that are close to one another (in the same quadrant) the TAB key should cycle, or just cycle through all the possible connectors.
The information supplied to the parameters displayed in a tag could still mess up the leader location but no solution will be perfect. At least with a specific location we can concentrate on designing a tag that will work nearly perfectly. If we can't control the length of the data in the labels then we just need a way to adjust the connector's location relative to the information. This means we'd need to be able to add dimensions and constrain the connector locations with parameters too.
I'd also love to be able to use a parameter to control the length of a label in a tag. This would allow us to increase the overall length of the data that shows up before wrapping to a new line. Combining that with parameters to control the location of leader connectors would provide considerable control of the tag and its leader(s).