mikrocontroller.net

Forum: PC-Programmierung Java: Char-Array to Image Object


Autor: Holger (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo Java-Gemeinde,

ich möchte in einer Klasse ein png-Bild mit einbinden. Dies möchte ich 
so realisieren das ich die Hex Werte des Bildes in einem Char-Array 
Speichere und dieses dann letztendlich in ein Buffernd Image umwandeln 
möchte.

Habe damit aber so meine Probleme.

Das Bild lese ich mit einem Inputstream in ein Char-Array.

Das sieht vereinfacht dann so aus:
private  char[] HexIcon = new char[] {
0x89, 0x50, 0x4E, 0x47,
0x0D, 0x0A, 0x1A, 0x0A,
0x00, 0x00, 0x00, 0x0D,
0x49, 0x48, 0x44, 0x52,
};

In diesem Char-Array steht also quasi das png-File... Nun möchte ich 
dieses char Array welches ja eigentlich das File ist, später mit 
Class.setIcon einem Label oder Button übergeben, dazu brauch ich ein 
BufferdImage oder ein IconImage...

Jemand sowas schonmal gemacht?

Holger

Autor: Μαtthias W. (matthias) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hi

ich hab zwar sowas noch nie gemacht aber mit den Klassen

java.io.ByteArrayInputStream
javax.imageio.stream.MemoryCacheImageInputStream
javax.imageio.ImageReader
javax.imageio.spi.ImageReaderSpi

sollte sich das eigentlich realisieren lassen. Erstaunlich kompliziert 
das Ganze. Mit der libPNG ist das in C ein gut lesbarer 20 Zeiler.

Matthias

Autor: Wilhelm Busch (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
java.awt.Toolkit ist hier die Klasse deiner Wahl.
Die Methode "Image createImage(byte[] imagedata)" sollte bei dir wie die 
Faust aufs Auge oder wie der Arsch auf den Nachttopf passen.

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.