Wie kann mit JavaFX ein Bild gezeichnet werden?
Im Beispiel wird ein BorderPane
erzeugt,
auf das mittig ein Canvas
-Objekt gesetzt
wird. Seine Methode getGraphicsContext2D()
ermittelt das GraphicsContext
-Objekt, das
dann verwendet wird, um frei nach Josef Albers' "Hommage
to the Square" drei Quadrate unterschiedlicher Farbe auf
den Canvas-Node
mit der ebenfalls
eingefärbten Scene
zu zeichnen.
public class CanvasBsp extends Application { public static void main(String[] args) { launch(args); } @Override public void start(Stage primaryStage) throws Exception { BorderPane root = new BorderPane(); Scene s = new Scene(root, 300, 300, Color.rgb(230, 185, 120)); final Canvas canvas = new Canvas(300, 300); root.setCenter(canvas); drawSquares(canvas.getGraphicsContext2D()); primaryStage.setScene(s); primaryStage.show(); } private void drawSquares(GraphicsContext gc) { gc.setFill(Color.rgb(255, 120, 35)); gc.fillRect(25, 30, 250, 250); gc.setFill(Color.rgb(255, 135, 5)); gc.fillRect(60, 85, 180, 180); gc.setFill(Color.rgb(5, 180, 180)); gc.fillRect(85, 125, 130, 130); } }
Wenn Ihnen javabeginners.de gefällt, freue ich mich über eine Spende an diese gemeinnützigen Organisationen.