I have an IntroJucer component which defines a few graphics elements. I have a rounded rectangle:
<ROUNDRECT pos="273.5 540.5 30 17" cornerSize="2" fill="solid: 808080" hasStroke="1" stroke="1, mitered, butt" strokeColour="solid: ff808080"/>
But in the code this becomes
g.drawRoundedRectangle (274.0f, 540.0f, 30.0f, 17.0f, 2.500f, 1.000f);
The coordinates are rounded to integer numbers. This is fine if you're filling the rounded rectangle, but, when drawing a stroke you have to shrink the rectangle by 0.5 pixels, otherwise the lines fall between two pixels and you get a 2px wide line with 50% transparency. On most displays, (the usual low resolution 96dpi kind) this just doesn't look good.