为什么有些图像旋转时,显示它在javafx ImageView?



尺寸为960x1280的图像水平旋转。我怎样才能使它们保持垂直?

ScrollPane sp = new ScrollPane();
sp.setPrefSize(900, 700);
public void showPicture(String str){
try{


File file = new File("pictures\"+str+".jpg");
Image image = new Image(file.toURI().toString());

if(image.getWidth()>900)
{
Double x=image.getWidth();
Double y=image.getHeight();
Double z=x/900;
if((y/z)>700)
{
z=y/700;

}


image = new Image(file.toURI().toString(),x/z,y/z,false,false);
}



ImageView imageView = ImageViewBuilder.create()
.image(image)
.build();


sp.setContent(imageView);

}catch(Exception e){System.err.println(e);}
}

我试图将滚动窗格更改为700x700,没有工作。这种情况只发生在960 × 1280的图片上,其他图片显示得很好。文件夹里的图片是垂直的。

代码没问题。问题是图片的EXIF方向不正确。

更多细节在这里:https://sirv.com/help/articles/rotate-photos-to-be-upright/

相关内容

  • 没有找到相关文章

最新更新