2016-05-26 32 views
0

Ich entwickle eine Anwendung, die Bilder aus dem lokalen Gerätespeicher lädt. I verwendete Kompressionstechnik Code:Android Gallery Thumbnail Bilder

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

das Bild ein Bitmap ist. Dies zeigt ein unlesbares Bild niedriger Qualität.

Gibt es eine effiziente Komprimierungstechnik? Wie zeigt die Android-Galerie auch Thumbnails, die lesbar sind und eine kleinere Dateigröße haben?

+0

Haben Sie Ändern von "90" durch Erhöhen Einer nach dem anderen ? –

+0

Ich habe auch 100. Dann habe ich auch ein verschwommenes Bild. –

Antwort

1

Gelöst es mit ThumbnailUtils getan haben, helfen:

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

Bildgröße viel versucht

reduziert
1

Hoffe, dass es Sie

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

ich diese

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

Ich habe das versucht. Aber die Größe war Fehler werfen. –

+0

@Bhaskar Gurram müssen Sie einige Änderungen nach Ihren Bedürfnissen zu tun, für mich seine Arbeit. – Nisarg

+0

@Bhaskar Gurram überprüfen bearbeitet Antwort – Nisarg