Malen auf Hintergrund

jean luc

Mitglied
Hallo,
ich habe ein Problem beim Zeichnen.
Ich lade ein Image und will in diesem Image herummalen.
Leider vermischt sich meine Zeichenfarbe mit der Hintergrundfarbe, da ich
die setXORMode() nutze.

Weis jemand eine Möglichkeit wie man dieses Problem umgehen kann und einfach nur die gewählte Farbe erscheint?

Gruß
SIMON
 
Hol' Dir doch von einem Image ein Graphics-Objekt. Dann kannst Du beliebig auf dem Bild herummalen.

Code:
Image myImg = Toolkit.getDefaultToolkit().getImage("c:\\hans.jpg");
Graphics g = myImg.getGraphics();
g.drawString("Max ist doof", 20, 30);

CU schnuffie :)
 
Moinsen,
ich hatte in meinem letzten Posting ein ähnliches Problem. Auch dort vermischt sich die Hintergrundfarbe mit der Zeichnenfarbe.
Das Problem ist ja immerhin, dass man selbst Kreise etc per Drag malen kann und somit auch die Größe dynamisch verändern kann.
Die setXOR-Methode dient dazu das Altgemalte zu überschreiben, so dass nur das Neue zu sehen ist.
Haste vielleicht noch nen anderen Vorschlag?

Jörg
 
ja: mit der "setPaintMode()"-Methode wird dem "Graphics"-Objekt gesagt, wo's lang geht. ;-)

Code:
g.setPaintMode();
g.setColor(Color.blue);
g.drawLine(8, 7, 20, 30);

CU schnuffie :)
 
das ist mir doch klar,
aber ich will per Drag die Größe des Kreises bestimmen und wenn ich die Maus loslasse den Kreis fest malen.
Mit der setPaintMode()-Methode kann ich aber nicht bei einem Hintergrundbild das Altgemalte übermalen, so dass wieder das Bild dahinter zu sehen ist, wenn ich z.B. dragge oder aber ein Objekt verschieben will.

Weißt du jetzt, warum ich die setPaintMethode nicht nutzen kann?
Ich bräuchte anderen Ideen...
Danke
 

Neue Beiträge

Zurück