Я пользуюсь picasso библиотекой для загрузки изображений. Я нахожу два способа уменьшить размер изображений. Что такое различие уменьшить размер изображения, используя размерКакая разница в уменьшении размера изображения с помощью изменения размера и преобразования в пикассо?
Picasso
.with(context)
.load(imageurl)
.resize(200, 100)
.onlyScaleDown() // the image will only be resized if it's bigger than 200x100 pixels.
.into(imageViewResizeScaleDown);
и используя метод преобразования как этот
public class BitmapTransform implements Transformation {
int maxWidth;
int maxHeight;
public BitmapTransform(int maxWidth, int maxHeight) {
this.maxWidth = maxWidth;
this.maxHeight = maxHeight;
}
@Override
public Bitmap transform(Bitmap source) {
int targetWidth, targetHeight;
double aspectRatio;
if (source.getWidth() > source.getHeight()) {
targetWidth = maxWidth;
aspectRatio = (double) source.getHeight()/(double) source.getWidth();
targetHeight = (int) (targetWidth * aspectRatio);
} else {
targetHeight = maxHeight;
aspectRatio = (double) source.getWidth()/(double) source.getHeight();
targetWidth = (int) (targetHeight * aspectRatio);
}
Bitmap result = Bitmap.createScaledBitmap(source, targetWidth, targetHeight, false);
if (result != source) {
source.recycle();
}
return result;
}
@Override
public String key() {
return maxWidth + "x" + maxHeight;
}
};
Picasso.with(context).load(imageurl)
.transform(new BitmapTransform (200, 100))
.into(imageViewResizeScaleDown);
Баки для вашей помощи
Преобразования обычно используются для преобразования растрового изображения, например, в круглое и т. Д. Я думаю, что это реальная разница. –