javafx image zoom

 public class EffectTest extends Application {
private final ImageView imageView = new ImageView();
    private final ScrollPane scrollPane = new ScrollPane();
    final DoubleProperty zoomProperty = new SimpleDoubleProperty(200);

    @Override
    public void start(Stage stage) throws Exception {

        zoomProperty.addListener((Observable arg0) -> {
            imageView.setFitWidth(zoomProperty.get() * 4);
            imageView.setFitHeight(zoomProperty.get() * 3);
        });

        scrollPane.addEventFilter(ScrollEvent.ANY, (ScrollEvent event) -> {
            if (event.getDeltaY() > 0) {
                zoomProperty.set(zoomProperty.get() * 1.1);
            } else if (event.getDeltaY() < 0) {
                zoomProperty.set(zoomProperty.get() / 1.1);
            }
        });
Image image1 = new Image(EffectTest.class.getResourceAsStream("/effecttest/img/1156909.png"));
        imageView.setImage(image1);
        imageView.preserveRatioProperty().set(true);
        scrollPane.setContent(imageView);
        
        stage.setScene(new Scene(scrollPane, 400, 300));
        stage.show();

    }
  
  
}
// 
原文地址:https://www.cnblogs.com/rojas/p/4723569.html