Обрезка изображений при увеличении - PullRequest
0 голосов
/ 06 июля 2018

У меня проблема с увеличением изображения. Когда я сильно увеличиваю изображение и перемещаю его (функция панорамирования), я теряю часть изображения (например, обрезку). Где ошибка в моем коде?

private void zoom(ImageView imagePannable) {
    imagePannable.setOnScroll(
            new EventHandler<ScrollEvent>() {
        @Override
        public void handle(ScrollEvent event) {
            double zoomFactor = 1.20;
            double deltaY = event.getDeltaY();

            if (deltaY < 0) {
                zoomFactor = 0.80;
            }
            else
                zoomFactor = 1.20;

            imagePannable.setFitHeight(imagePannable.getFitHeight() * zoomFactor);
            imagePannable.setFitWidth(imagePannable.getFitWidth() * zoomFactor);

            event.consume();
       }
    });
}
double propX = viewportBounds.getWidth() / image.getWidth();
double propY = viewportBounds.getHeight() / image.getHeight();

imageView.setFitWidth(imageView.getImage().getWidth() * propX);
imageView.setFitHeight(imageView.getImage().getHeight() * propY);


scrollPane.setContent(imageView);

scrollPane.setPannable(true);
// center the scroll contents.
scrollPane.setHvalue(0.5);
scrollPane.setVvalue(0.5);

zoom(imageView);
...