BufferedImage anzeigen, imageIcon oder paintComponent();

Status
Nicht offen für weitere Antworten.

ulr!ch

Bekanntes Mitglied
Hi JavaGemeinde,

verzweifel an folgendem Problem: Ich habe ein BufferedImage (das sich auch schön in einer PNG-Datei abspeichern lässt) und möchte es an meine Drucker-Routine schicken, die allerdings nur Components drucken kann. Ich möchte dazu einfach nur das BufferedImage (ohne Zwischenspeichern) auf einem Label anzeigen. Weder Code A noch B funktionierten dabei. :( Weiß jemand Rat?

Möglichkeit A: Über ein ImageIcon; Resultat: schwarze Fläche
Code:
BufferedImage image = new BufferedImage(jTabbedPane.getComponent(jTabbedPane.getSelectedIndex()).getWidth(),
						  jTabbedPane.getComponent(jTabbedPane.getSelectedIndex()).getHeight()-40,
						  BufferedImage.TYPE_INT_RGB);
	  image.createGraphics();
	  ImageIcon myIcon = new ImageIcon(image);
	  JOptionPane.showMessageDialog(Auswerten.this, "Icon","A plain message",JOptionPane.PLAIN_MESSAGE, myIcon);

Möglichkeit B: Überschreiben der paintMethode, Resultat: nix!
Code:
// BufferedImage erstellen
	  BufferedImage image = new BufferedImage(jTabbedPane.getComponent(jTabbedPane.getSelectedIndex()).getWidth(),
						  jTabbedPane.getComponent(jTabbedPane.getSelectedIndex()).getHeight()-40,
						  BufferedImage.TYPE_INT_RGB);
	  image.createGraphics();
	  Graphics2D g2d = image.createGraphics();
	  g2d.drawImage(image, null, 100, 100);

	  JFrame frameX = new JFrame();
	  frameX.getContentPane().setLayout(new GridBagLayout());

	  MyLabelX abc = new MyLabelX(image);
	  abc.paintComponent(g2d);

// MyLabelX abc auf JFrame -> anzeigen
	  frameX.getContentPane().add(abc);
	  frameX.pack();
	  frameX.setVisible(true);
Mit der Klasse MyLabelX:
Code:
  public class MyLabelX extends JLabel {
    BufferedImage image;

    public MyLabelX(BufferedImage image) {
      this.image = image;
      repaint();
    }

    public void paintComponent(Graphics g) {
      Graphics2D g2d = (Graphics2D) g;
      super.paintComponent(g2d);
      g2d.drawImage(image, 0, 0, this);
    }
  }

Beide Möglichkeiten führen aus irgendwelchen Gründen nicht weiter. Da das erste Beispiel mit weniger Zeilen zumindest zu einem schwarzen Rechteck kommt :) würde ich gerne diesen Weg weiterverfolgen.
Weiß aber nicht mehr weiter. Hier vielleicht jemand? Bitte! :bahnhof:

By<e Ulrich
 

ulr!ch

Bekanntes Mitglied
Sorry, ich bin's noch einmal.
Ich suche schon seit drei geschlagenen Tagen im Internet herum und habe immer noch keine Lösung für das Problem gefunden. Kann ich es irgendwie weiter eingrenzen?
Das BufferedImage scheint korrekt angelegt worden zu sein, da ich es ja in in einer PNG-Datei ausgeben lassen kann. Los, ihr JavaGurus, stevg, deathbyaclown usf. ... ihr wisst doch bestimmt Rat. :cool:

By<e Ulrich
 

AlArenal

Top Contributor
Du musst nur 1 und 1 zusammenzählen. Du weißt wie man aus nem BufferedImage ein ImageIcon macht und oben siehst du wie man ein Icon in einem JLabel darstellt. JLabel ist u.a. abgeleitet von Component und schon hast du deine Anforderung erfüllt.

Dass ImageIcon das Interface Icon implementiert ist eine Transferleistung deinerseits, die ich wohl erwarten kann ;)
 

ulr!ch

Bekanntes Mitglied
Sorry AlArenal,

auch die Methoden, die ich beschrieben habe, führen zum Ziel. Aber meine print-Routine druckt nur Components, die auch visible() sind. Das muss ich mir noch einmal genauer anschauen...
Aber Danke für deine Hilfe.

By<e Ulrich
 
Status
Nicht offen für weitere Antworten.
Ähnliche Java Themen
  Titel Forum Antworten Datum
Mr.Strobel BufferedImage Exportieren Eclipse Java Basics - Anfänger-Themen 14
A BufferedImage zeigt nur schwarz Java Basics - Anfänger-Themen 3
A BufferedImage Pixel Java Basics - Anfänger-Themen 7
pkm Best Practice BufferedImage in JPane darstellen - aber wie? Java Basics - Anfänger-Themen 22
T BufferedImage in Jar Java Basics - Anfänger-Themen 8
C Problem beim laden eines BufferedImage Java Basics - Anfänger-Themen 2
S BufferedImage heller/dunkler machen mit RescaleOp Java Basics - Anfänger-Themen 2
D Jpg in BufferedImage Reader oder Array ablegen? Java Basics - Anfänger-Themen 5
F BufferedImage Speicher Nutzung Java Basics - Anfänger-Themen 2
S BufferedImage Java Basics - Anfänger-Themen 2
Ernesto95 BufferedImage Teilbereich wieder transparent setzen Java Basics - Anfänger-Themen 16
M BufferedImage performant einlesen Java Basics - Anfänger-Themen 5
A BufferedImage in Android einbinden - Bild spiegeln -wie? Java Basics - Anfänger-Themen 4
O BufferedImage drehen, falsch positioniert Java Basics - Anfänger-Themen 5
K BufferedImage, Bilder laden Java Basics - Anfänger-Themen 15
H BufferedImage DPI verändern Java Basics - Anfänger-Themen 5
S jpeg bzw bufferedimage als PDF Speichern Java Basics - Anfänger-Themen 13
W von Graphics in BufferedImage Java Basics - Anfänger-Themen 10
H BufferedImage Java Basics - Anfänger-Themen 5
F BufferedImage aus short[][][] Java Basics - Anfänger-Themen 3
Luk10 NPE bei BufferedImage[] Java Basics - Anfänger-Themen 4
S BufferedImage mit farbwerten füllen Java Basics - Anfänger-Themen 11
I Probleme beim Laden eins BufferedImage Java Basics - Anfänger-Themen 8
P BufferedImage als raw speichern Java Basics - Anfänger-Themen 3
C BufferedImage + Popup/Overlay Java Basics - Anfänger-Themen 2
E BufferedImage drucken Java Basics - Anfänger-Themen 3
R BufferedImage in JLabel Java Basics - Anfänger-Themen 2
G Serialisiertes BufferedImage wieder einlesen Java Basics - Anfänger-Themen 13
G Jpanel -> BufferedImage konvertieren Java Basics - Anfänger-Themen 7
G BufferedImage in Applet laden Java Basics - Anfänger-Themen 8
Q BufferedImage aus Bild in jar Java Basics - Anfänger-Themen 2
? BufferedImage löschen Java Basics - Anfänger-Themen 4
F Farben eines ganzen BufferedImage invertieren Java Basics - Anfänger-Themen 2
K Graphics2D und BufferedImage Java Basics - Anfänger-Themen 3
D wie kann ich ein BufferedImage komprimieren? Java Basics - Anfänger-Themen 7
reibi TIFF nach BufferedImage wandeln Java Basics - Anfänger-Themen 72
reibi Farbiges BufferedImage umwandeln zu 2farbig SchwarzWeiss Java Basics - Anfänger-Themen 7
E nullpointer bei BufferedImage Java Basics - Anfänger-Themen 2
M BufferedImage erzeugt OutOfMemoryError Java Basics - Anfänger-Themen 10
B Vorteil von Graphic2D und BufferedImage? Java Basics - Anfänger-Themen 6
X Image nach BufferedImage wandeln ? Java Basics - Anfänger-Themen 9
T BufferedImage kopieren Java Basics - Anfänger-Themen 6
G Image -> BufferedImage Java Basics - Anfänger-Themen 4
M Image/BufferedImage Java Basics - Anfänger-Themen 4
T Multiple BufferedImage Java Basics - Anfänger-Themen 3
N Java Taschenrechner hat Jemand vlt einen Tipp dafür wie ich jetzt die buttons verbinden kann und das Ergebnis auf dem textfield anzeigen lassen kann Java Basics - Anfänger-Themen 13
W ListView komplett anzeigen Java Basics - Anfänger-Themen 2
BeginnerJava "Weihnachtsbäume" anzeigen: Höhe als Parameter Java Basics - Anfänger-Themen 1
sserio Problem beim Anzeigen Java Basics - Anfänger-Themen 5
Schniffi Nur bestimmte Bilder aus einem Array auf Image Button anzeigen lassen Java Basics - Anfänger-Themen 3
D Erste Schritte png in JFrame anzeigen? Java Basics - Anfänger-Themen 3
M PNG als Spieler im Fenster anzeigen Java Basics - Anfänger-Themen 4
M Anzahl Schleifendurchgänge nach x Sekunden anzeigen Java Basics - Anfänger-Themen 2
M Rekursives Programm zum Anzeigen von Primzahlen Java Basics - Anfänger-Themen 3
M Auf MainJFrame Panels anzeigen lassen Java Basics - Anfänger-Themen 19
Rubberduck Combobox-Werte in GUI anzeigen Java Basics - Anfänger-Themen 13
J Die größte Zahl anzeigen Java Basics - Anfänger-Themen 19
V_Fynn03 Kontostand anzeigen lassen von einer anderen Klasse Java Basics - Anfänger-Themen 3
C Erste Schritte Bilder nach Export anzeigen Java Basics - Anfänger-Themen 0
O Popoup Menü im JTable richtig anzeigen Java Basics - Anfänger-Themen 6
J Einen Buttonklick in Label anzeigen Java Basics - Anfänger-Themen 6
M jTextPane Bild anzeigen Java Basics - Anfänger-Themen 6
A ArrayList - size() nur nach bestimmtem index anzeigen lassen Java Basics - Anfänger-Themen 13
E JAvaFX: Verschiedene Panels nach Klick auf Node des TreeView anzeigen Java Basics - Anfänger-Themen 0
S ArrayListe in einer JComboBox anzeigen Java Basics - Anfänger-Themen 10
C Methoden Dateien im Ordner anzeigen Java Basics - Anfänger-Themen 12
M Vererbung Ein JLabel einer Elternklasse anzeigen Java Basics - Anfänger-Themen 8
A Jdialog nur 1x anzeigen Java Basics - Anfänger-Themen 2
J Wie kann ich Images per Tastendruck anzeigen/einfügen? Java Basics - Anfänger-Themen 3
T Positionen anzeigen Java Basics - Anfänger-Themen 6
M Probleme mit Anzeigen von String in GUI und if-Anweisung Java Basics - Anfänger-Themen 9
N Datei einlesen und grafisch anzeigen Java Basics - Anfänger-Themen 31
L Verschiedene Bilder per Knopfdruck anzeigen lassen Java Basics - Anfänger-Themen 17
N Quiz- Fragen zufällig anzeigen lassen Java Basics - Anfänger-Themen 7
binop Bild anzeigen lassen Java Basics - Anfänger-Themen 2
W Erste Schritte Zweidimensionales Array - Gerade Zahlen anzeigen lassen Java Basics - Anfänger-Themen 3
S eingegebene Matrix anzeigen Java Basics - Anfänger-Themen 4
T Kamerabild anzeigen Java Basics - Anfänger-Themen 1
J JPG in JFrame anzeigen lassen Java Basics - Anfänger-Themen 3
J Erstes Applet läßt sich nicht anzeigen Java Basics - Anfänger-Themen 2
I A0-Format in jpanel anzeigen Java Basics - Anfänger-Themen 1
A Link in der Eingabeleiste nichr anzeigen Java Basics - Anfänger-Themen 1
C Methoden aus Klassen anzeigen lassen Java Basics - Anfänger-Themen 14
T Output in CMD anzeigen lassen? Java Basics - Anfänger-Themen 1
N Input/Output Wenn kein Input, dann Fehler anzeigen lassen im JFrame Java Basics - Anfänger-Themen 6
L Videos in Java anzeigen lassen Java Basics - Anfänger-Themen 10
M Wert aus String Feld anzeigen Java Basics - Anfänger-Themen 7
C JComboBox "Hilfstext" anzeigen Java Basics - Anfänger-Themen 11
C Html in einem JEditorPane anzeigen Java Basics - Anfänger-Themen 2
D Bild im Applet anzeigen Java Basics - Anfänger-Themen 3
W Frame in anderer Klasse anzeigen lassen Java Basics - Anfänger-Themen 1
D Externe Eeite beim Mousover anzeigen Java Basics - Anfänger-Themen 0
M JSP-Einfaches Bild anzeigen Java Basics - Anfänger-Themen 4
L Über 100e Werte anzeigen Java GUI Java Basics - Anfänger-Themen 1
R File chooser Dateien in frame anzeigen lassen Java Basics - Anfänger-Themen 5
T JLabel anzeigen lassen... Java Basics - Anfänger-Themen 6
H Erste Schritte Uhrzeit anzeigen in Minuten Dezimal Java Basics - Anfänger-Themen 8
A Datum zwischen zwei Daten berechnen und in Tagen anzeigen Java Basics - Anfänger-Themen 4
B Variable im Fenster anzeigen lassen? Java Basics - Anfänger-Themen 2
L bestimmten Frame anzeigen lassen? Java Basics - Anfänger-Themen 6

Ähnliche Java Themen

Neue Themen


Oben