Tengo una imagen con una dimensión de 900x500 y quiero cambiar su tamaño a una nueva dimensión de imagen de 150x150 para que la imagen completa quepa en el tamaño del lienzo y se coloque en el centro.
Lo hago en ImageMagick así:
convert a.png -resize 150x150\> -size 150x150 xc:white +swap -gravity center -composite a.jpg
¿Cómo hacerlo en VIPS?
Solo intento asi
vipsthumbnail a.png --size 150x150 -o a.jpg
Hola, tendrías que hacerlo en dos pasos en la línea de comandos:
vipsthumbnail a.png -o t1.v -s 150
vips gravity t1.v b.jpg centre 150 150 --extend white
Eso es usar t1.v
como un archivo intermedio temporal.
Si usa Python / Ruby / PHP / node / etc., puede hacerlo sin el intermedio.
@jcupitt wow gracias, funciona como un encanto :)
Por cierto, quiero usar a través de PHP en mi máquina CentOS 7, pero probé pecl install vips
Pero falló porque no puedo instalar libvips-devel
php-vips será difícil en centos7. Se envía con php5.4, pero php-vips es solo php7 +.
Deberá actualizar mucho su php o usar una plataforma más reciente.
FYI:
Si está ejecutando Centos> = 7, entonces hay una manera más fácil de instalar libvips ( v8.6.3 ) y la extensión PHP vips ( v1.0.8 ) (el repositorio Remi proporciona una manera fácil de instalarlo).
# Install the EPEL repository configuration package:
yum install https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm
# Install the Remi repository configuration package:
yum install http://rpms.remirepo.net/enterprise/remi-release-7.rpm
# Install the yum-utils package (for the yum-config-manager command):
yum install yum-utils
# Command to enable the repository (PHP 7.2.4, for PHP 7.1.16 use: remi-php71):
yum-config-manager --enable remi-php72
# Install libvips and the PHP vips extension:
yum install php-pecl-vips
Comentario más útil
FYI:
Si está ejecutando Centos> = 7, entonces hay una manera más fácil de instalar libvips ( v8.6.3 ) y la extensión PHP vips ( v1.0.8 ) (el repositorio Remi proporciona una manera fácil de instalarlo).