Java Processing in Anwendung?

1 Antwort

1) Gib einen relativen Pfad an. Dein Bild sollte also in dem Ordner liegen, in dem du auch dein Sketch gespeichert hast.

Nutze am besten den Menüpunkt unter Sketch > Datei hinzufügen. Daraufhin wird dir in deinem Sketchverzeichnis ein data-Ordner angelegt, in dem die neue Datei liegt.

PImage image = loadImage("data/yourImage.jpg");

2) Unter Datei > Exportieren kannst du dein Sketch zu einer Executable exportieren lassen. Der entsprechende Export wird dir im Sketchverzeichnis angelegt. Neben der exe-Datei musst du allerdings den data- und den lib-Ordner immer einzeln mit dazu transportieren.

Eine andere Lösung wäre es, Processing Core sowie das Bild in ein Java-Projekt einzubinden und dann eine JAR zu bauen, die alle Ressourcen inkludiert. Für diesen Arbeitsschritt wäre eine IDE wie Eclipse, NetBeans oder IntelliJ (evt. mit einem Buildverwaltungstool wie Maven oder Gradle) hilfreich. Das Resultat könnte man erneut (mittels launch4j) in einen Wrapper packen.

Bei den Bildern (oder anderen zu ladenden Ressourcen wie bspw. Textdateien) sollte darauf geachtet werden, dass sie als Stream geladen werden müssen. Ungefähr so:

var inputStream = getClass().getResourceAsStream("/resource/...");
var image = ImageIO.read(inputStream);

Siehe dazu auch hier:

Das Image-Objekt dürfte man dann an den Konstruktor von PImage übergeben können.

var sketchImage = new PImage(image);

Kurzum: Wenn du diesen Weg gehen möchtest, brauchst du ein paar Java-Kenntnisse.