0

Я разрабатываю приложение, которое загружает изображения из локального хранилища устройств. я использовал сжатие кода техники:Android Gallery Thumbnail Images

FileOutputStream fo = new FileOutputStream(file); 
picture.compress(Bitmap.CompressFormat.JPEG, 90, fo); 
fo.flush(); 
fo.close(); 

, где изображение растрового изображения. Это показывает нечитаемое изображение низкого качества.

Есть ли эффективная техника сжатия. Также, как галерея андроид показывает уменьшенные изображения, которые читабельны и имеют меньший размер?

+0

Вы пробовали изменение '90' путем увеличения по одному ? –

+0

Я тоже сделал 100. Затем я также получил размытое изображение. –

ответ

1

решить ее с помощью ThumbnailUtils:

Bitmap picture = ThumbnailUtils.extractThumbnail(BitmapFactory.decodeFile(_path_to_your_file), FINAL_WIDTH, FINAL_HEIGHT); 

размера изображения уменьшается значительно

1

Надеется, что это поможет вам

Picasso.with(context) 
      .load(imageUri) // will come from gallery 
      .resize(imageWidth, imageWidth).centerInside() 
      .into(imageview); 

Я сделал это

public static final int GRID_PADDING = 8; // in dp 
    public static final int NUM_OF_COLUMNS = 3; 
    Resources r = getResources(); 
     float padding = TypedValue.applyDimension(TypedValue.COMPLEX_UNIT_DIP,GRID_PADDING,r.getDisplayMetrics()); 
imageWidth = (int) ((getScreenWidth()) - ((NUM_OF_COLUMNS + 1) * padding))/ NUM_OF_COLUMNS); 
+0

Я пробовал это. Но изменение размера вызывало ошибку. –

+0

@Bhaskar Gurram вам нужно внести некоторые изменения в соответствии с вашими потребностями, для меня это работает. – Nisarg

+0

@Bhaskar Gurram check отредактированный ответ – Nisarg