How do I resize an imageview image in javafx?

2020-01-31 02:33发布

问题:

I need to resize an image to specific dimensions, 100 by 100 pixels for example, in JavaFX.

How can I achieve that? Could the Image or the ImageView class be used for this purpose?

回答1:

Yes, using an ImageView. Just call

ImageView imageView = new ImageView("...");
imageView.setFitHeight(100);
imageView.setFitWidth(100);

By default, it will not preserve the width:height ratio: you can make it do so with

imageView.setPreserveRatio(true);

Alternately you can resize the Image directly on loading:

Image image = new Image("my/res/flower.png", 100, 100, false, false);

Resizing the image on loading is useful for things like thumbnails of larger images as the memory required is lower than storing the larger image data representation in memory.