通过 Glide 加载图像会破坏图像质量
Loading images by Glide spoil image quality
我建立简单的画廊。我使用 Glide 加载我的照片。看起来在由 glide 加载的图像上有某种条纹(像素似乎是可见的)。
我尝试加载更改格式 RGB_565/ARGB_8888
的照片并使用 .dontTransform()
但它看起来仍然比原始照片差。
我用来加载的代码:
ImageView photoDetails;
photoDetails = (ImageView)findViewById(R.id.imageDetails);
Glide.with(this)
.load(pictureFile) //path to picture
.asBitmap()
.format(DecodeFormat.PREFER_ARGB_8888)
.dontTransform()
.into(photoDetails);
要使用 Glide
加载原始图像,我使用以下代码:
Glide.with(view.getContext())
.load(pictureFile)
.asBitmap()
.into(new SimpleTarget<Bitmap>(Target.SIZE_ORIGINAL,Target.SIZE_ORIGINAL) {
@Override
public void onResourceReady(Bitmap resource, GlideAnimation glideAnimation) {
imageView.setImageBitmap(resource);
}
});
请注意,由于您设备的屏幕分辨率,浏览器中的图片在设备上可能看起来有所不同。使用此方法,您将能够使用 Bitmap
对象检查像素。
另外,请记住,您的 ImageView
必须具有 width
和 height
以及 WRAP_CONTENT
值。
请试试这个:
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:adjustViewBounds="true"
android:layout_margin="2dp"
图像视图属性设置android:adjustViewBounds="true"
我建立简单的画廊。我使用 Glide 加载我的照片。看起来在由 glide 加载的图像上有某种条纹(像素似乎是可见的)。
我尝试加载更改格式 RGB_565/ARGB_8888
的照片并使用 .dontTransform()
但它看起来仍然比原始照片差。
我用来加载的代码:
ImageView photoDetails;
photoDetails = (ImageView)findViewById(R.id.imageDetails);
Glide.with(this)
.load(pictureFile) //path to picture
.asBitmap()
.format(DecodeFormat.PREFER_ARGB_8888)
.dontTransform()
.into(photoDetails);
要使用 Glide
加载原始图像,我使用以下代码:
Glide.with(view.getContext())
.load(pictureFile)
.asBitmap()
.into(new SimpleTarget<Bitmap>(Target.SIZE_ORIGINAL,Target.SIZE_ORIGINAL) {
@Override
public void onResourceReady(Bitmap resource, GlideAnimation glideAnimation) {
imageView.setImageBitmap(resource);
}
});
请注意,由于您设备的屏幕分辨率,浏览器中的图片在设备上可能看起来有所不同。使用此方法,您将能够使用 Bitmap
对象检查像素。
另外,请记住,您的 ImageView
必须具有 width
和 height
以及 WRAP_CONTENT
值。
请试试这个:
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:adjustViewBounds="true"
android:layout_margin="2dp"
图像视图属性设置android:adjustViewBounds="true"