Java 忽略图像平滑参数
目前我想在应用程序上显示图像。这是一个16x16.png,但我不希望它平滑。我希望它能保持其锐利的方块和像素,所以我尝试通过设置平滑参数Java 忽略图像平滑参数,java,image,javafx,imageview,image-resizing,Java,Image,Javafx,Imageview,Image Resizing,目前我想在应用程序上显示图像。这是一个16x16.png,但我不希望它平滑。我希望它能保持其锐利的方块和像素,所以我尝试通过设置平滑参数 public class MainMenu implements Initializable { @FXML ImageView imageViewOfImage; @FXML Label labelOfImageName; @Override public void initialize(URL location, Res
public class MainMenu implements Initializable {
@FXML ImageView imageViewOfImage;
@FXML Label labelOfImageName;
@Override
public void initialize(URL location, ResourceBundle resources) {
imageViewOfImage.setImage(new Image("images/grass_side.png", 100, 100, true, false));
imageViewOfImage.setFitWidth(1024);
imageViewOfImage.setFitHeight(1024);
labelOfImageName.setText("grass_side.png");
}
}
但是,图像仍然模糊。我尝试将ImageView#setImage()移动到设置大小的下方,以查看这是否有帮助,但仍然没有任何效果。我偷看了一眼,但我似乎正确地遵循了这些步骤
在300x300像素左右时,它看起来更漂亮,但随后它被平滑了。根据链接的问题,你应该用:
新图像(“images/grass_side.png”,1024,1024,true,false)”缩放图像。
我在这之前做过,结果是一样的。我从和新图像中测试了这个示例(“images/grass_side.png”,1024,1024,true,false)
不会平滑像素(使用Java 8)。但是在您的示例中,您首先使用100x100加载图像(不平滑像素)然后ImageView将图像放大到1024x1024并平滑像素。不要使用imageViewOfImage.setFitWidth
,因为这样在图像放大时会始终平滑图像。这也适用于FXML