Ok, this is actually a little more interesting than I thought. To get around the fact that gojs doesn’t support rich text, I have two labels side by side with different styled fonts that i want to appear as one string. In order to place them correctly, i call directly into the canvas context object. I take the font string from the text node, set it on the context, do some calculations to get the width, and am supposed to set the context font back. In one case, I was not setting the font back on the context, so the font of another graph object looked like it was falling off, because the object being calculated was explicitly set to the default font.
So, my fault!
However, when I found and fixed that bug, I encountered that after that, the font of the graph object that i was getting the font from would still change during this calculation phase. Odd. Also odd, the font size was set to a non integer (12.5px)
It turns out that directly setting the context’s font back to the font string of the graph object, when using non integer font sizes, is not the same as whatever happens when i set the font string via the gojs parameter object. This was surprising, but not a big deal. I just adjusted my font by half a pixel. Just following up in case this is something you want to be made aware of.
Once again, thanks for your time and your always quick responses.