如何获得更好的ImageView调整质量?

时间:2016-01-15 10:38:18

标签: javafx resize imageview scale

使用setFitWidth() / setFitHeight()方法在JavaFX中缩放的图像与在图形编辑器中预设的图像相比,质量明显低于我的Photoshop。

public class Main extends Application {

    @Override
    public void start(Stage primaryStage) throws Exception {
        primaryStage.setTitle("Image Resize Test");
        StackPane root = new StackPane();
        root.setStyle("-fx-background-color: gray;");
        ImageView imageView = new ImageView("save.png");
        //ImageView imageView = new ImageView("save_small.png");
        imageView.setPreserveRatio(true);
        imageView.setFitHeight(15);
        root.getChildren().add(imageView);
        primaryStage.setScene(new Scene(root, 600, 600));
        primaryStage.show();
    }


    public static void main(String[] args) {
        launch(args);
    }
}

应用程序截图: enter image description here enter image description here

左侧的图像在JavaFX中缩放,右侧的图像在Photoshop中预缩放。第一个图像的白色边框仅在其右侧清晰可见,而第二个图像(在Photoshop中调整大小)在所有侧面都有可见的微弱边框,这更好地代表了周围有白色边框的原始图像。

我尝试设置imageView.setSmooth(true)SceneAntialiasing.BALANCED,但结果相同。

这些是本例中使用的PNG图像:

缩放(15x15)PNG图像(在Photoshop中调整大小): enter image description here

原始(500x509)PNG图像: enter image description here

0 个答案:

没有答案