垂直图像作为水平图像加载

时间:2018-05-10 18:53:43

标签: java image javafx

我正在编写一个简单的应用程序,它基本上会加载一些图片并向用户显示它们。问题是,当我初始化手机拍摄的垂直图像 时,它无法识别图像是垂直的,只是交换宽度和高度。

否则,如果我加载一个垂直图像,例如从互联网上下载,一切正常。

Here你看到了我的应用程序和两张加载的图片。左边的是一个下垂的并且垂直显示。但是用我的手机拍摄的正确照片并没有垂直显示。

这是我的班级/代码:

import javafx.scene.CacheHint;
import javafx.scene.image.Image;
import javafx.scene.image.ImageView;

public class Picture {
    String name;
    String path;
    String res;
    String size;
    ImageView iv;
    Image image;

    public Picture(String name, String path) {
        this.image = new Image("file:" + path);
        this.name = name;
        this.path = path;
        this.res = image.getWidth() + " x " + image.getHeight();

        this.iv = new ImageView(image);
        this.iv.setFitHeight(180);
        this.iv.setFitWidth(180);
        this.iv.setPreserveRatio(true);
        this.iv.setCache(true);
        this.iv.setCacheHint(CacheHint.SPEED);
        this.iv.setStyle("-fx-effect: dropshadow(three-pass-box, rgba(0,0,0,0.8), 10, 0, 0, 0);");
    }
}

这是我的第一个问题所以不要责怪我的布局;)

对我的代码或问题的任何反馈表示赞赏。 如果您需要整个代码,请告诉我。

感谢您的帮助

0 个答案:

没有答案