[英]How to get image width and height from a network url
我正在开发一个 android 应用程序并在其中使用 REST API。 我正在从服务器接收图像 url,我想根据图像的原始高度使用图像 url 显示这些图像。
如何使用网络图像 url 获取图像的宽度和高度。 我已经尝试从字符串 url 获取位图,但为此我想在后台线程中执行此操作,这会导致图像加载速度非常慢。
有什么办法可以从图像url中获取图像的宽度和高度,并可以根据宽度和高度在imageview中显示图像。
如果有人知道这件事,请帮助我。
非常感谢先进。
URL url = new URL("url/image.jpg");
Bitmap bmp = BitmapFactory.decodeStream(url.openConnection().getInputStream());
对于宽度:
bmp.getWidth();
对于高度:
bmp.getHeight();
用于在 imageview 中设置:
ImageView.setImageBitmap(bmp);
进一步参考:
https://developer.android.com/reference/android/graphics/Bitmap.html#getHeight%28%29
/* your library */
implementation 'com.github.bumptech.glide:glide:4.11.0'
annotationProcessor 'com.github.bumptech.glide:compiler:4.11.0'
/* your code */
Glide.with(this)
.asBitmap() //get hieght and width
.load("link image")
.into(new SimpleTarget<Bitmap>() {
@Override
public void onResourceReady(@NonNull Bitmap resource, @Nullable
Transition<? super Bitmap> transition) {
Log.d("TAG", "onResourceReady: "+resource.getWidth()+"
"+resource.getHeight());
}
});
//////////////////////////////////////
Glide.with(this)
.asFile() // get size Image
.load("link image")
.into(new SimpleTarget<File>() {
@Override
public void onResourceReady(@NonNull File resource, @Nullable
Transition<? super File> transition) {
fab_full.setLabelText(""+resource.length());
}
});
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.