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

Publicado por Carlos-vialfa. Última actualización: 4 de octubre de 2011 a las 19:25 por Carlos-vialfa.
El documento «Evitar las franjas negras al redimensionar una imagen » se encuentra disponible bajo una licencia Creative Commons. Puedes copiarlo o modificarlo libremente. No olvides citar a CCM (es.ccm.net) como tu fuente de información.