Bagaimana cara menyalin file gambar melalui baris perintah?

13

Apa yang ingin saya lakukan sangat sederhana. Saya punya file.png, yang ingin saya pantulkan, yaitu hasilnya harus menjadi "refleksi" dari gambar asli.

Saya tahu alat besar seperti GIMP dan InkScape dapat melakukan itu, tetapi saya berharap untuk utilitas baris perintah, sesuatu seperti convert(yang sayangnya tampaknya tidak memiliki opsi seperti itu, atau setidaknya tidak disebutkan dalam manhalaman).

Sergiy Kolodyazhnyy
sumber

Jawaban:

26

Dari pembacaan cepat ini , tampaknya convertmemanggil opsi ini -flopuntuk mirroring horizontal, dan -flipuntuk vertikal. Yang perlu saya lakukan adalah

convert -flop input.png output.png
Sergiy Kolodyazhnyy
sumber
1
sudo apt-get install imagemagick
tonka
Saya telah membaca sesuatu tentang berubah convertmenjadi magick. Jadi, jika terjadi kesalahan, coba magick.
Sigur
3

Jika Anda ingin menimpa di tempat dan Anda memiliki banyak file gambar di folder yang sama, mogrifydari suite ImageMagick tampaknya menjadi cara termudah untuk mencapai ini:

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

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

Untuk tugas khusus convertini mungkin cara terbaik untuk pergi, tetapi untuk hal semacam ini saya sering menggunakan netpbmperpustakaan, yang dapat diinstal (seperti yang Anda harapkan) dengan apt install netpbm. Kemudian

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

Untuk tugas ini terlalu banyak, tetapi saya sering menemukan diri saya menulis skrip satu kali untuk mengubah atau menganalisis file PNM dengan cara aneh yang tidak akan tersedia convert. Ini relatif mudah, karena PNM adalah format grafik bitmap yang sederhana.

MJD
sumber