2012-05-30 8 views
6

Nella libreria Slick (basata su LWJGL), è possibile ridimensionare le immagini dopo averle caricate con getScaledCopy, ma verrà applicato l'anti-aliasing. Voglio che i bordi rimangano ruvidi; Sto facendo pixel art. Come posso fare questo?Immagine della scala di spostamento Java senza anti-aliasing

+4

supposizione basata sulle javadocs: provare a utilizzare [ 'setFilter()'] (http://slick.cokeandcode.com/javadoc/org/newdawn/ slick/Image.html # setFilter (int)) per impostare il filtro immagine su ['FILTER_NEAREST'] (http://slick.cokeandcode.com/javadoc/org/newdawn/slick/Image.html#FILTER_NEAREST) ​​prima di ridimensionare Immagine. – millimoose

+0

Questo ha funzionato, grazie! Posta questa risposta e la accetterò;) – Jwosty

risposta

7

Sulla base delle osservazioni:

La documentazione implica che il filter property di Image s controlli come le immagini vengono ridimensionate. Per ridimensionare l'immagine senza lisciatura, utilizzare il nearest neighbour filter:

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