1. Gewinne jetzt ein UMiDIGI C Note - alle Informationen findest du hier!!
  1. AquaBall, 17.04.2012 #1
    AquaBall

    AquaBall Threadstarter Android-Hilfe.de Mitglied

    Ich lade ein Bild aus dem Internet, das ich wunderbar anzeigen kann.
    Nur speichern in einem XML gelingt mir nicht, weil ich es nicht 'encoden' kann.

    Code:
    Bitmap bitmap = BitmapFactory.decodeStream(
                              ([URL="http://www.google.de/search?btnI&q=site:docs.oracle.com/javase/7/docs/api/%20inurl:inputstream"]InputStream[/URL])new [URL="http://www.google.de/search?btnI&q=site:docs.oracle.com/javase/7/docs/api/%20inurl:url"]URL[/URL](imageUrl).getContent());
    
    [URL="http://www.google.de/search?btnI&q=site:docs.oracle.com/javase/7/docs/api/%20inurl:bytearrayoutputstream"]ByteArrayOutputStream[/URL] bStream = new [URL="http://www.google.de/search?btnI&q=site:docs.oracle.com/javase/7/docs/api/%20inurl:bytearrayoutputstream"]ByteArrayOutputStream[/URL]();
    [URL="http://www.google.de/search?btnI&q=site:docs.oracle.com/javase/7/docs/api/%20inurl:objectoutputstream"]ObjectOutputStream[/URL] oStream = new [URL="http://www.google.de/search?btnI&q=site:docs.oracle.com/javase/7/docs/api/%20inurl:objectoutputstream"]ObjectOutputStream[/URL]( bStream );
    oStream.writeObject ( bitmap );
    
    bildString = Base64.encodeToString(bStream.toByteArray(),Base64.DEFAULT);
    scheitert an: java.io.NotSerializableException: android.graphics.Bitmap

    Wie kann ich ein Bitmap in einen druckbaren String umwandeln?
     
  2. DieGoldeneMitte, 17.04.2012 #2
    DieGoldeneMitte

    DieGoldeneMitte Android-Lexikon

    1.) Base64Codierung ist nicht XML. :D
    2.) Eine Bitmap ist ein Haufen Pixel und kein "Bildspeicherformat".
    3.) Wenn du eine Bitmap in eine Bytefolge verwandeln willst, musst du das Bild in ein Bildformat konvertieren (JPEG, GIF, PNG,... Viele Parameter wollen eingestellt sein: Kompression, Bittiefe, Lossiness, etc...) Dafür braucht man einen Konverter.

    Die in Java dafür normalerweise benutzte paket ist javax.imageio.*, das ist leider bei Android nicht dabei.

    Am einfachsten ist es wohl, den Bytestrom beim Einlesen abzufangen.
     
    Zuletzt bearbeitet: 17.04.2012
  3. AquaBall, 18.04.2012 #3
    AquaBall

    AquaBall Threadstarter Android-Hilfe.de Mitglied

    1) ist mir klar, aber um einen "Haufen Pixel" nach XML zu bringen muss ich wohl encoden (z.B. mit Basa64) um nicht SteuerCodes drin zu haben oder nicht?

    2) dieser Haufen repräsentiert aber ein darstellbares Bild. Kann ich direkt als Image darstellen. (Siehe Post: Ich HABE ein Bild im Bitmap)

    3) Der Haufen Pixel kann wohl völlig unabhängig vom Inhalt in einen Haufen Byte umgewandelt werden. (und identisch zurück)

    Das wäre meine Frage gewesen. Aber ich hab sie wohl falsch gestellt.
     
  4. Fr4gg0r, 18.04.2012 #4
    Fr4gg0r

    Fr4gg0r App-Anbieter (Werbung)

    Genau das musst du tun. Einfach nach "android get bytes from bitmap" oder ähnlichem suchen. Das byte array kannste dann encoden wie du lustig bist und anschließend in ein xml formatiertest dokument schmeißen.
     
Die Seite wird geladen...
Ähnliche Themen Forum Datum
[ERLEDIGT] Instanzierung aus XML Android App Entwicklung 11.04.2017
[RÜCKMELDUNG FEHLT] Text und Bilder in View einbinden Android App Entwicklung 26.03.2017
Uri oder File path als String speichern zum wiederauslesen Android App Entwicklung 26.01.2017
Wie kann ich die Anzahl von Images im Drawableordner zählen? Android App Entwicklung 08.01.2017
Wie erstelle ich Icons für die Items im Navigation Drawer (xml Format) Android App Entwicklung 09.12.2016
Unschönes XML parsen Android App Entwicklung 30.11.2016
Anomalie bei Bitmap-Transfer übers Netzwerk Android App Entwicklung 21.11.2016
Clientseitige Speicherung der Bilder Android App Entwicklung 31.10.2016
schleife für image view animations Android App Entwicklung 24.10.2016
Du betrachtest das Thema "Image (Bitmap) in String (für XML)" im Forum "Android App Entwicklung",