java代码级图像的改进
我对Java还是相当陌生,并试图找到有关如何在框架中包含图片的信息。 有些图片大小合适,适合我的屏幕,但另一些图片必须缩放才能适合我的屏幕。 到目前为止,我得到了这个,有没有办法改进它并缩小图片?例如,它现在的一半大小?我必须在代码中更改什么java代码级图像的改进,java,image,frame,scale,Java,Image,Frame,Scale,我对Java还是相当陌生,并试图找到有关如何在框架中包含图片的信息。 有些图片大小合适,适合我的屏幕,但另一些图片必须缩放才能适合我的屏幕。 到目前为止,我得到了这个,有没有办法改进它并缩小图片?例如,它现在的一半大小?我必须在代码中更改什么 import java.awt.FlowLayout; import java.awt.image.BufferedImage; import java.io.File; import java.io.IOException; import javax
import java.awt.FlowLayout;
import java.awt.image.BufferedImage;
import java.io.File;
import java.io.IOException;
import javax.imageio.ImageIO;
import javax.swing.ImageIcon;
import javax.swing.JFrame;
import javax.swing.JLabel;
class DisplayImage {
public static void main(String avg[]) throws IOException
{
DisplayImage img =new DisplayImage();
}
public DisplayImage() throws IOException
{
BufferedImage img=ImageIO.read(new File("C://Address.jpg"));
BufferedImage ret = new BufferedImage(32,32,BufferedImage.SCALE_FAST);
ret.getGraphics().drawImage(img,0,0,32,32,null);
ImageIcon icon=new ImageIcon(img);
JFrame frame=new JFrame();
frame.setLayout(new FlowLayout());
frame.setSize(200,300);
JLabel lbl=new JLabel();
lbl.setIcon(icon);
frame.add(lbl);
frame.setVisible(true);
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
}
}
可以使用以下代码缩放图像:
image.getScaledInstance(-1, 25,
java.awt.Image.SCALE_SMOOTH);
问题是什么还不完全清楚,但是
newbufferedimage(32,32,BufferedImage.SCALE\u FAST)
错误:最后一个参数应该是图像的类型,例如,BuffereImage.type_INT_ARGB
。