Hallo zusammen.
Mein Problem besteht darin, dass ich eine Grafik anzeigen muss, aus der aber noch verschiedene Bereiche ausgeschnitten d.h. teilweise Transparent gemacht werden müssen.
Wie man vielleicht erkennen kann möchte ich innerhalb des Bildes halbtransparente bereiche einer bestimmten Farbe schaffen. Das problem ist jetzt, dass natürlich die bereiche über die ich das Polgon zeichne nicht transparent sind sind, sondern da ja Schon das bild liegt. Also muss ich es irgendwie hinbekommen entwerder die Form des Polygons aus dem Bild "Rauszulöschen" oder - und das wäre mir lieber - es zu schaffe dass beim Zeichnen des Polygons die Pixel komplett überschrieben werden also so, dass das Polygon später noch halbdurchsichtig ist und das Bild dahinter verschwunden.
Ich hoffe ihr versteht was ich meine, und vielleicht weiß ja der ein oder andere wie man dieses Problem elegant lösen kann.
Mein Problem besteht darin, dass ich eine Grafik anzeigen muss, aus der aber noch verschiedene Bereiche ausgeschnitten d.h. teilweise Transparent gemacht werden müssen.
Code:
Graphics2D tmp = (Graphics2D) geb[g].getGraphics();
tmp.setColor(new Color(0xaaff00ee,true));
tmp.drawImage(img,0,0,null);
Polygon p = new Polygon(new int[]{xv, xv + 13, xv + 13, xv, xv},
new int[]{yv + 6, yv + 12, yv + 11 - diff, yv + 5 - diff,yv + 6}, 5);
tmp.drawPolygon(p);
tmp.fillPolygon(p);
Wie man vielleicht erkennen kann möchte ich innerhalb des Bildes halbtransparente bereiche einer bestimmten Farbe schaffen. Das problem ist jetzt, dass natürlich die bereiche über die ich das Polgon zeichne nicht transparent sind sind, sondern da ja Schon das bild liegt. Also muss ich es irgendwie hinbekommen entwerder die Form des Polygons aus dem Bild "Rauszulöschen" oder - und das wäre mir lieber - es zu schaffe dass beim Zeichnen des Polygons die Pixel komplett überschrieben werden also so, dass das Polygon später noch halbdurchsichtig ist und das Bild dahinter verschwunden.
Ich hoffe ihr versteht was ich meine, und vielleicht weiß ja der ein oder andere wie man dieses Problem elegant lösen kann.