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


von Holger (Gast)


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:
1
private  char[] HexIcon = new char[] {
2
0x89, 0x50, 0x4E, 0x47,
3
0x0D, 0x0A, 0x1A, 0x0A,
4
0x00, 0x00, 0x00, 0x0D,
5
0x49, 0x48, 0x44, 0x52,
6
};

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

von Μαtthias W. (matthias) Benutzerseite


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

von Wilhelm Busch (Gast)


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.

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.