我有这四个类变量:
private static final ImageIcon redKing = new ImageIcon("Images/redKingImage.png");
private static final ImageIcon blackKing = new ImageIcon("Images/blackKingImage.png");
private static final ImageIcon redChecker = new ImageIcon("Images/redCheckerImage.png");
private static final ImageIcon blackChecker = new ImageIcon("Images/blackCheckerImage.png");
我使用此方法将图标设置为我的棋盘。
private void setImageOfChecker()
{
if(this.isKing == true){
if(isRed){
this.imageOfChecker = redKing;
}
else{
this.imageOfChecker = blackKing;
}
}
else{
if(isRed){
this.imageOfChecker = redChecker;
}
else{
this.imageOfChecker = blackChecker;
}
}
}
我现在的问题是图标对于棋盘上的方块来说太大了,我想知道将这些图像重新缩放到特定尺寸(例如16x16像素)的最简单方法是什么这些图标非常适合在板上。
答案 0 :(得分:1)
您可以使用我基于此线程制作的简单方法: resizing a ImageIcon in a JButton
public ImageIcon resizeIcon(int width, int height, ImageIcon icon) {
Image img = icon.getImage();
Image newimg = img.getScaledInstance(width, height, java.awt.Image.SCALE_SMOOTH);
icon = new ImageIcon(newimg);
return icon;
}
正如MadProgrammer所说,有一种更好的方法来确保良好的质量: link