2016-03-25 1 views
1

Wenn ich versuchte, die Größe (Breite & Höhe) des Bildes zu komprimieren, habe ich eine Frage über die inSampleSize Eigenschaft von BitmapFactory.Options(). Wenn inSampleSize Wert 1 ist, ist das Ergebnis nicht komprimiert, wenn inSampleSize Wert von 2, Bildkompression die Hälfte, wenn inSampleSize Wert von 3, Bildkompression die Hälfte auch, wenn inSampleSize Wert von 4 Bildkompression von 1/4, wenn inSampleSize Wert von 6 , der Kompressionseffekt entspricht inSampleSize = 4, wenn 8 ist, Bildkompression 1/8. So komme ich zu der vorläufigen Schlussfolgerung: Wird die Compression erst dann wirksam, wenn der Wert 2^n sein muss?android inSampleSize von BitmapFactory.Options()

Antwort

0

Ja, von Javadocs in Android-Quellcode

Hinweis: der Decoder einen Endwert auf Potenzen von 2, anderem Wert abgerundet von 2. bis zum nächsten Strom wird

Basis verwendet
+0

zuerst, thx für Ihre Antwort.Aber wenn ich inSampleSize Wert von 6 berechnet, muss ich es auf 8 anpassen, um die endgültigen Größenanforderungen zu erfüllen, Gibt es eine Möglichkeit, Bilder inSampleSize Wert von 6 zu komprimieren? – dd101110

+0

@ dd101110 Das API-Dokument ist klar, dass Sie nicht können. – twlkyao

Verwandte Themen