繁体   English   中英

Javafx图片来自下载链接

[英]Javafx image from download link

我将图像上传到后端并生成下载链接,我想下​​载图像并将其显示在javafx中,我发现此解决方案:

    ImageView imageView = ImageViewBuilder.create()
            .image(new Image(imageSource))
            .build();

但是我正在使用JavaFx 11,并且在我的javafx场景imageView包中似乎没有ImageViewBuilder这样的东西? 有什么想法或替代方法吗?

不久之前不推荐使用构建器类。 有关更多信息,请参见JDK-8124188JDK-8092861此邮件列表 也就是说, Image类仍然可以加载远程图像,但是您应该使用构造函数而不是构造函数。

文档重点是我的):

Image类表示图形图像,用于从指定的URL加载图像。

支持的图像格式为:

  • 骨形态发生蛋白
  • GIF
  • JPEG格式
  • PNG

可以在加载图像时调整图像的大小(例如,以减少图像消耗的内存量)。 应用程序可以指定缩放时使用的过滤质量,以及是否保留原始图像的宽高比。

URL支持的所有URL都可以传递给构造函数。 如果传递的字符串不是有效的URL ,而是一个路径,那么在这种情况下,将在类路径上搜索Image

使用ImageView显示此类加载的图像。 同一Image实例可以由多个ImageView显示。

因此,您可以使用:

String remoteUrl = ...;
Image image = new Image(remoteUrl);
ImageView view = new ImageView(image);

// or...
ImageView view = new ImageView(remoteUrl);

第二个选项利用了ImageView(String)构造函数。 请注意,它阻止您在后台加载图像(无自定义代码),而Image的构造函数为其提供了一个选项。 如果要控制自己的InputStream也可以使用适当的Image构造函数来实现; 在这种情况下,请不要忘记关闭InputStream

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM