Large fonts

I have a few problems when using our Go application on machines with different system font settings.
Control Panel / Display / Settings / Advanced / DPI Setting / (Normal size or Large size)

  1. In my application, I have orthogonal links and I save and load the adjustment points so that the links are reloaded in the position the user moved them to.
    The problem I have is that if a project is saved on a machine with Normal font size and reloaded on a machine with Large fonts, then the node positions are slightly different and when I set the adjustment points, the links no longer form right angles.
  2. Our application allows the user to use GoCommentNodes to document what they are doing. We have sample projects that we created on a machine with Normal fonts that look nice and neat, but when reloaded on a machine with Large fonts, the nodes are all jumbled up and the GoCommentNodes are completely different sizes.
    Is there any solution or workaround for either of these problems?
    Thanks in advance,
    -Darren Jones

What behavior would you like to see?

I guess the main goal is that the appearance of the diagrams looks nice and professional. It would be nice if it looked exactly the same regardless of the system font size, but that may not be possible.
When the orthogonal links are all at crazy angles and the comment nodes are really huge, overlapping the other nodes it makes the diagram look really bad – even though it looked great on a computer with normal fonts. You have to move all the nodes to get them spaced out so that you can see everything and so that the links recalculate their stroke to become orthogonal again.
I know that there are settings with Windows forms to account for large fonts so that regular Windows apps look fine regardless of whether the user is using large fonts or normal fonts. I was hoping that maybe Go also provided a simple solution like this.
Thanks again for your assistance,
-Darren Jones

I agree that having nice looking diagrams is the main goal.

  1. So if the DPI has changed, you’ll need to ignore any saved coordinates and let the standard behavior of GoLink.CalculateStroke() take effect. I suppose you could also automatically move some or all of the nodes too, to avoid any overlapping nodes that didn’t overlap before.
  2. Are you saving and restoring the size of the comment nodes? Perhaps you shouldn’t bother for any of the nodes.