Evitar las franjas negras al redimensionar una imagen

Diciembre 2016


El problema al redimensionar imágenes


Cuando se quiere utilizar una imagen como fondo de pantalla o como protector de pantalla, a veces las imágenes tienen dimensiones muy diferentes a las de la pantalla.

Por ejemplo, esta imagen:



(Foto por rich115)

Una vez convertido en 1280 x 1024, aparecen dos grandes franjas negras.


Con un pequeño script podemos redimensionar la imagen reemplazando las bandas negras con una parte de la misma imagen.
El resultado es mejor:

¿Cómo funciona?


1) Descarga e instala ImageMagick
(Para Windows, necesita descargarse: ImageMagick-6.x.x-x-Q16-windows-dll.exe)

2) Crea el script nicefit.bat:
@echo off    
@rem nicefit.bat - Nicely fit images to a resolution, replacing black stripes with colors matching the image and add a smooth shadow.    
@rem License: This batch is in public domain, but the author would appreciate the credits (http://sebsauvage.net).    
@rem Requirement: This program requires ImageMagick 6.x or later.    
@rem Syntax: nicefit.bat filename width height outputfilename    
@rem Example: nicefit.bat myimage.jpg 1280 1024 result.bmp    
SETLOCAL    
set filename=%1    
set width=%2    
set height=%3    
set outputfilename=%4    
convert ( ( %filename% -gravity Center -crop "80x80%%+0+0" -resize "%width%x" +repage -crop "%width%x%height%+0+0" -resize "x%height%" +repage -crop "%width%x%height%+0+0" -blur 0x40 +repage ) ( %filename% -resize %width%x%height% -matte -background black -shadow 100x16 ) -gravity Center -composite ) ( %filename% -resize %width%x%height% ) -composite -flatten +repage -strip -quality 80 %outputfilename%    




3) Redimensiona la imagen utilizando el script:
nicefit photo.jpg 1280 1024 resultat.jpg


Y listo.

Otros ejemplos


(Imagen por Rebecca_bexxi)

(Imagen por peppers)

(Imagen por Immanuel Giel)

Nota


Este script debería ser adaptable sin problema para el programa informático bash.




Consulta también :
El documento «Evitar las franjas negras al redimensionar una imagen » de CCM (es.ccm.net) se encuentra disponible bajo una licencia Creative Commons. Puedes copiarlo o modificarlo siempre y cuando respetes las condiciones de dicha licencia y des crédito a CCM.