Die Frage ist im Titel. Zum Beispiel, wie kann ich g in einer Datei im folgenden Snippet speichern?Gibt es eine Möglichkeit, ein Graphics-Objekt in Codename One zu speichern, ohne einen Screenshot zu erstellen?
public void paints(Graphics g, Image background, Image watermark, int width, int height) {
g.drawImage(background, 0, 0);
g.drawImage(watermark, 0, 0);
g.setColor(0xFF0000);
// Upper left corner
g.fillRect(0, 0, 10, 10);
// Lower right corner
g.setColor(0x00FF00);
g.fillRect(width - 10, height - 10, 10, 10);
g.setColor(0xFF0000);
Font f = Font.createTrueTypeFont("Geometos", "Geometos.ttf").derive(220, Font.STYLE_BOLD);
g.setFont(f);
// Draw a string right below the M from Mercedes on the car windscreen (measured in Gimp)
g.drawString("HelloWorld",
(int) (848),
(int) (610)
);
// NOW how can I save g in a file ?
}
Die reaseon warum ich will nicht einen Screenshot nehmen, weil ich die volle Auflösung von g (zB: 2000 x 1500) behalten will.
Ich wäre jedem dankbar, der mir sagen kann, wie man das mit Codename 1 macht. Wenn nicht möglich, dann ist es schon gut, es zu wissen!
Cheers,
Danke das funktioniert wie erwartet !!! Die Ausgabebilddatei hat die gleichen Abmessungen wie das Originalbild! Aber warum hat die Methode, die ich benutzt habe, nicht funktioniert? Der einzige Unterschied zu Ihrem ist, dass Sie ein Zwischenbild als Puffer verwenden, während ich direkt auf das Graphics-Objekt g zeichnete. Vielen Dank im Voraus, wenn Sie oder vielleicht @Shai einige Erklärungen hinzufügen können. – HelloWorld