Aprende Java Aprende Php Aprende C++ Aprende HTML 5 Aprende JavaScript Aprende JSON Aprende MySQL Aprende SQLServer Aprende Visual Basic 6 Aprende PostgreSQL Aprende SQLite Aprende Redis Aprende Kotlin Aprende XML Aprende Linux VSC Aprende Wordpress Aprende Laravel Aprende VueJS Aprende JQuery Aprende Bootstrap Aprende Netbeans Aprende Android
Sigueme en Facebook Sigueme en Twitter Sigueme en Instagram Sigueme en Youtube Sigueme en TikTok Sigueme en Whatsapp
Home / Java / JLabel: Escalar imagen

JLabel: Escalar imagen

Por jc mouse martes, diciembre 19, 2017

El componente swing JLabel nos permite cargar una imagen con la propiedad setIcon, sin embargo la imagen no toma el tamaño del contenedor sino que conserva su propio tamaño, entonces lo que debemos hacer es usar el método getScaledInstance(int width,int height,int hints) de la clase Image. Este método crea una versión escalada de la imagen. Devuelve un nuevo objeto Image que renderizará la imagen con el ancho y alto especificados de forma predeterminada. El nuevo objeto Image puede cargarse de forma asíncrona incluso si la imagen original de origen ya se ha cargado por completo.
Si el ancho o el alto es un número negativo, se sustituye un valor para mantener la relación de aspecto de las dimensiones de la imagen original. Si tanto el ancho como la altura son negativos, se utilizan las dimensiones de la imagen original.

Por ejemplo el siguiente código, carga una imagen PNG de dimensiones 100×80 pixeles y la redimensiona a 300×300 pixeles asignadola a un contenedor JLabel

//imagen origen
Image img = new ImageIcon(getClass().getResource("/example/black_christmas.png")).getImage();
//escala imagen
Image newimg = img.getScaledInstance(300, 300,  java.awt.Image.SCALE_SMOOTH);
ImageIcon imageIcon = new ImageIcon(newimg); 
//asigna a componenente JLabel
jLabel2.setIcon(imageIcon);

Y el resultado que tenemos, la imagen pequeña es la imagen original, la imagen grande, es la imagen escalada

escalar imagen

enjoy!!!

Tags

Artículos similares

Agrega imagenes en un JComboBox

Para agregar imágenes a un JComboBox, partiremos de un proyecto Netbeans con la siguiente estructura: Tenemos dos clases[...]

Procesamiento de imágenes en java con ImageMagick

im4java es una interfaz pura de Java para la línea de comandos de ImageMagick. La interfaz de la línea de comandos de IM[...]

Guardar reporte PDF directamente con Jasperreports

Guardar un reporte PDF creado en iReport no es tan diferente de solo visualizarlo en pantalla. En este ejemplo se hace u[...]

JSON Web Token para Java y Android

Un JSON Web Token es un estandar abierto para la creación de Token de Acceso el cual permite firmar digitalmente informa[...]

Lightweight Java Game Library

¿Quien no ha querido programar un juego? creo que la mayoría si no es que todos los que conocen de programación sin impo[...]

Archivos binarios en Java (Lectura/Escritura)

Según Santa Wikipedia: «Un archivo binario es un archivo informático que contiene información de cualquier tipo codifica[...]