getSubimage() (ich bin einfach zu blöd)

Status
Nicht offen für weitere Antworten.

BAAAM

Mitglied
Hallo,
ich bin anscheinend zu blöd, um vier Zahlen richtig einzugeben. :?

Also ich habe ein BufferedImage (200 * 60 Pixel im Format gif) und probiere mit getSubimage() ein Teilbild auszuschneiden. Wenn ich schreibe: Bild.getSubimage(0, 0, 40, 60) klappt alles wie ich will. Aber bei Bild.getSubimage(40, 0, 80, 60) wirft die VM mir eine RasterFormatException (oder so ähnlich) mit der Begründung x + width is out of Raster.
Langsam glaube ich begriffen zu haben, dass die Argumente nicht die Eckpunkte angeben, aber selbst wenn es die Länge ist, müsste es eigentlich funktionieren.

Was mache ich falsch? Was bewirken die Argumente, die getSubimage() erwartet?

Vielen Dank für Antworten
MfG
BAAAM
 
S

SlaterB

Gast
bei mir gehts
Code:
public class Test
{


    public static void main(String[] args)
        throws Exception
    {
        BufferedImage b = ImageIO.read(new File("test.gif"));
        System.out.println(b.getWidth() + " - " + b.getHeight());
        BufferedImage sub = b.getSubimage(40, 0, 80, 60);
        System.out.println(sub.getWidth() + " - " + sub.getHeight());

        JLabel l = new JLabel(new ImageIcon(b));
        JLabel l2 = new JLabel(new ImageIcon(sub));

        JFrame f = new JFrame();
        f.setVisible(true);
        f.add(l, BorderLayout.CENTER);
        f.add(l2, BorderLayout.SOUTH);
        f.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        f.pack();
    }

}

Ausgabe:
200 - 60
80 - 60
lad vielleicht mal die Bilddatei hoch,
allerdings bin ich in 30 Min. für die nächsten Tage nicht mehr da ;)
 

BAAAM

Mitglied
Danke, ich hab das Problem gelöst.

Ich war wirklich dumm. In einer anderen Methode habe ich aus dem Bild schon ein Teil rausgeschnitten und wollte nun aus einem 40*60 Pixel großem Bild, ab Pixel 40 ein Bild rausschneiden. War ja klar das ich da Probleme kriege :wink:

Vielen Dank für die Antwort

MfG
BAAAM
 
Status
Nicht offen für weitere Antworten.

Neue Themen


Oben