ich habe hier den fall, dass ich unter macOS keine probleme habe
unter windows aber
um dieses stück code geht es
macOS liefert mir mit backgroundImage.getWidth(this) die richtige größe, windows hingegen...
egal ob 1.5 oder 6
warum, ich dachte der mediatracker verhindert genau das mit waitForID
grundsätzlich bin ich imageIO nicht abgeneigt, aber warum ist das so wahnsinnig langsam im vergleich?
unter windows aber
Java:
Exception in thread "AWT-EventQueue-0" java.lang.IllegalArgumentException: Width (0) and height (0) must be non-zero
at java.awt.image.ReplicateScaleFilter.<init>(Unknown Source)
at java.awt.Image.getScaledInstance(Unknown Source)
um dieses stück code geht es
Java:
//InputStream streamImage = this.getClass().getResourceAsStream("/"+currentBackgroundMap+".jpg");
String pathToImage = getClass().getResource("/").getPath() + currentBackgroundMap + ".jpg";
//to slow
//img = ImageIO.read(streamImage);
backgroundImage = getToolkit().getImage(pathToImage);
mt.addImage(backgroundImage, 0);
try {
mt.waitForID(0);
} catch (InterruptedException e) {
}
int mapWidth = (int) (dx * 100 * backgroundImage.getWidth(this));
int mapHeigth = (int) (dy * 100 * backgroundImage.getHeight(this));
backgroundImage = backgroundImage.getScaledInstance(mapWidth, -mapHeigth, Image.SCALE_FAST);
macOS liefert mir mit backgroundImage.getWidth(this) die richtige größe, windows hingegen...
egal ob 1.5 oder 6
warum, ich dachte der mediatracker verhindert genau das mit waitForID
grundsätzlich bin ich imageIO nicht abgeneigt, aber warum ist das so wahnsinnig langsam im vergleich?