2012-05-30 5 views
6

In der Slick-Bibliothek (basierend auf LWJGL) können Sie Bilder skalieren, nachdem Sie sie mit getScaledCopy geladen haben, aber es wird Anti-Aliasing angewendet. Ich möchte, dass die Kanten rau bleiben; Ich mache Pixelkunst. Wie kann ich das machen?Java Slick-Skalierung Bild ohne Kantenglättung

+4

wilde Vermutung basiert auf den javadocs: versuchen Sie es mit [ 'setFilter()'] (http://slick.cokeandcode.com/javadoc/org/newdawn/ slick/Image.html # setFilter (int)), um den Bildfilter auf ['FILTER_NEAREST'] (http://slick.cokeandcode.com/javadoc/org/newdawn/slick/Image.html#FILTER_NEAREST) ​​zu setzen, bevor Sie die Skalierung vornehmen Bild. – millimoose

+0

Das hat funktioniert, danke! Post diese Antwort und ich werde es akzeptieren;) – Jwosty

Antwort

7

Basierend auf den Kommentaren:

Die Dokumentation impliziert, dass die filter property von Image s steuert, wie Bilder skaliert werden. Um ein Bild zu skalieren, ohne Glättung, verwenden Sie die nearest neighbour filter:

Image original = …; 
original.setFilter(Image.FILTER_NEAREST); 
Image scaled = original.getScaledCopy();