¿Cómo duplicar archivos de imagen a través de la línea de comandos?


13

Lo que quiero hacer es muy simple. Tengo una file.png, que quiero reflejar, es decir, el resultado debería ser un "reflejo" de la imagen original.

Sé que grandes herramientas como GIMP y InkScape pueden hacer eso, pero espero una utilidad de línea de comandos, algo así convert(que lamentablemente no parece tener esa opción, o al menos no se menciona en la manpágina).

Respuestas:


26

De la lectura rápida de esto , aparentemente convertllama a esta opción -floppara la duplicación horizontal y la -flipvertical. Todo lo que necesitaba hacer era

convert -flop input.png output.png

1
sudo apt-get install imagemagick
tonka

He leído algo sobre cambiar converta magick. Entonces, si algo sale mal, inténtalo magick.
Sigur

3

Si desea sobrescribir en el lugar y tiene una tonelada de archivos de imagen en la misma carpeta, mogrifydesde la suite ImageMagick parece ser la forma más fácil de lograr esto:

# mirror in the vertical axis:
mogrify -flip *.jpg

# mirror in the horizontal axis:
mogrify -flop *.jpg

2

Para esta tarea en particular convertes probablemente la mejor manera de hacerlo, pero para este tipo de cosas a menudo uso la netpbmbiblioteca, que es instalable (como es de esperar) apt install netpbm. Entonces

  pngtopnm input.png | pnmflip -lr \
    | (other transformations if desired) \  
    | pnmtopng > output.png

Para esta tarea es excesivo, pero a menudo me encuentro escribiendo scripts únicos para transformar o analizar archivos PNM de formas peculiares que no estarían disponibles convert. Esto es relativamente fácil, porque PNM es prácticamente el formato gráfico de mapa de bits imaginable más simple.

Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.