Java AWT - Ширина объекта rectangle2d отличается в Java8 от Java11 - PullRequest
0 голосов
/ 31 декабря 2018

Один из моих проектов - перейти с Java8 на Java11.У меня есть объект TextLayout.Я пытаюсь получить объект Rectangle2D, используя textLayout.getBounds () .

Одна странная вещь, которую я наблюдаю, состоит в том, что ширина объекта Rectangle2D в Java11 отличается от ширины Java8.Как это возможно?

Мой код:

package sample;

import java.awt.*;
import java.awt.font.FontRenderContext;
import java.awt.font.TextLayout;
import java.awt.geom.Rectangle2D;

public class Main extends Frame {
    public Main() {
        super("Java 2D Example01");
        setSize(400, 300);
        setVisible(true);
    }


    @Override
    public void paint(Graphics g) {
        FontRenderContext frc = ((Graphics2D) g).getFontRenderContext();
        Font f = new Font("Times", Font.BOLD, 30);

        TextLayout tl = new TextLayout("10x25in-Diagram1", f, frc);
        Rectangle2D rectangleForAllText = tl.getBounds();
        System.out.println(rectangleForAllText);


 //java.awt.geom.Rectangle2D$Float[x=2.375,y=-21.5625,w=250.4375,h=27.875]

//java.awt.geom.Rectangle2D$Float[x=2.375,y=-21.5625,w=253.43736,h=27.875]
    }

    public static void main(String[] args) {

        new Main();

    }
}

Как видно из двух комментариев: Объект rectangleForAllText в Java8: java.awt.geom.Rectangle2D $ Float [x = 2,375, y = -21,5625, w = 250,4375, h = 27,875]

Тот же объект в Java11: java.awt.geom.Rectangle2D $ Float [x= 2,375, у = -21,5625, ш = 253,43736, ч = 27,875]

Может кто-нибудь сказать, пожалуйста, почему это так?Любое исправление / предложения будут очень признательны.

Спасибо.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...