Imagem!

3 respostas
markinlelo

E ai galera,
Como faço para exibir um campo com foto,

atualmente eu tô usando o atributo Icon de um jlabel, mas, o campo se redimenciona de acordo com o tamanho da foto, eu gostaria de fazer o contrário
ou seja
definiria o tamanho do meu campo e a foto iria se redimencionar

alguem pode me dar uma LUZ???

3 Respostas

ViniGodoy

Tente usar essa classe

markinlelo

Bixei aqui já,

Valeu D+ Kara!
A
public static Image redimensionar(Image imagem, int width, int height, boolean proporcional) {
        //Se a imagem já tem as dimensões passadas retorna a imagem sem alteração
        if(imagem.getWidth(null) == width && imagem.getHeight(null) == height ) return imagem;

        if(proporcional) {
            // Calculos necessários para manter as propoçoes da imagem, conhecido como "aspect ratio"
            double thumbRatio = (double) width / (double) height;
            int imageWidth = imagem.getWidth(null);
            int imageHeight = imagem.getHeight(null);
            double imageRatio = (double) imageWidth / (double) imageHeight;
            if (thumbRatio < imageRatio) {
                height = (int) (width / imageRatio);
            } else {
                width = (int) (height * imageRatio);
            }
            // Fim do cálculo
        }

        BufferedImage thumbImage = new BufferedImage(width, height, BufferedImage.TYPE_INT_RGB);
        Graphics2D graphics2D = thumbImage.createGraphics();
        graphics2D.setRenderingHint(RenderingHints.KEY_INTERPOLATION, RenderingHints.VALUE_INTERPOLATION_BILINEAR);
        graphics2D.drawImage((Image)imagem, 0, 0, width, height, null);

        return thumbImage;
    }

Pode copiar e colar esse metodo ai… e usar ele… vc passa uma imagem e as novas dimensoes e ele retorna a imagem alterada :smiley:

Criado 5 de junho de 2007
Ultima resposta 5 de jun. de 2007
Respostas 3
Participantes 3