Como faço para redimensionar uma ImageIO que esta pintando um JPanel?
public class PanelPintado extends JPanel
{
private BufferedImage img;
public PanelPintado(){
try {
img = ImageIO.read(getClass().getResource("/Imagens/Tela Indisponivel.png"));
} catch (IOException ex) {
ex.printStackTrace();
}
}
protected void paintComponent(Graphics g){
if(table_al.getRowCount()==0){
scr_al.setVisible(false);
super.paintComponent(g);
g.drawImage(img, 0, 0,null);
}
}
}
O ImageIO só faz a leitura e gravação de arquivos. Quem tem os dados da imagem é o BufferedImage, e é nele que você pode executar a operação de redimensionamento. Veja um exemplo em: https://stackoverflow.com/questions/12620158/save-resized-image-java
Abraço.
Você não vai redimensionar o ImageIO
, vai redimensionar, ou desenhar de forma redimensionada o Image
.
Usa o drawImage
sobrecarregado que aceita a largura e altura.
g.drawImage(img, 0, 0, largura, altura, null);
1 curtida