Я пытаюсь написать приложение, которое должно рисовать много строк с использованием класса Graphics2D в Java. Мне нужно получить размеры каждого объекта String (чтобы вычислить точное положение каждой строки). Существует так много строк, что это должно быть сделано до вызова метода paint() и только один раз в начале моей программы (так что у меня пока нет объекта Graphics2D). Я знаю, что существует метод Font.getStringBounds(), но ему нужен объект FontRenderContext в качестве параметра.
Когда я попытался создать свой собственный объект:
FontRenderContext frc = new FontRenderContext(MyFont.getTransform(), true, true)
а затем получить границы строк, я всегда получаю разные размеры, чем когда я получаю FontRenderContext, используя метод Graphics2D.getFontRenderContext() внутри метода paint(). Различия невелики (около 1E-3), но мне интересно, почему есть разница?
Однако есть ли лучший и безопасный способ получения размеров строки?
Thnx за любую помощь заранее!