2011-04-01 18 views
8

Tengo una gran cantidad de imágenes que pueden tener cualquier dimensión que necesite en la misma relación de aspecto (básicamente cuadrada). Entonces, si una imagen es 100x300, la salida debería ser 300x300. Lo que no quiero es escalar o estirar la imagen de ninguna manera. Solo quiero que se aplique un color de fondo (blanco) a los lados de la imagen, luego la imagen original se centrará (ya sea vertical u horizontalmente según la relación de aspecto original).ImageMagick cambiar la relación de aspecto sin escalar la imagen

He jugado con un par de comandos de conversión diferentes, pero todavía no he encontrado el mágico: todos distorsionan la imagen para alcanzar la relación de aspecto, o escala la imagen a la dimensión correcta más grande, pero lo hacen no tiene la relación de aspecto que estaba buscando.

Gracias de antemano

Respuesta

11
convert input.png -background white -gravity center -extent 100x300 -flatten output.png 

Ver http://www.imagemagick.org/Usage/crop/#extent

+2

Si, efectivamente, su imagen está en formato PNG, puede utilizar transparente en lugar de blanco, que puede ser preferible. Si las imágenes son fotográficas, probablemente deberían usar JPEG, que no admite transparencia. –

Cuestiones relacionadas