Gabungkan Gambar Berdampingan (Secara Horizontal)


98

Saya memiliki lima gambar dengan ukuran: 600x30, 600x30, 600x30, 600x30, 810x30. Namanya adalah: 0.png, 1.png, 2.png, 3.png, 4.png.

Bagaimana cara menggabungkannya secara horizontal untuk membuat gambar berukuran 3210x30 dengan ImageMagick?

Jawaban:


117

ImageMagick dikirimkan dengan montageutilitas. Montase akan menambahkan setiap gambar secara berdampingan sehingga Anda dapat menyesuaikan jarak antara setiap gambar ( -geometry), dan tata letak umum ( -tile).

montage [0-5].png -tile 5x1 -geometry +0+0 out.png

Contoh lain dapat ditemukan di halaman Penggunaan Montase


1
Dokumentasi montase menetapkan bahwa sintaks [0-5] adalah untuk linux, jadi saya rasa jika Anda menggunakan Windows, Anda harus mengetik / menghasilkan semua nama file. yaitu montase 0.png 1.png 2.png 3.png 4.png ...
Dan

3
Kamu yang terbaik! Saya telah mencari ini sepanjang hidup saya!
Robin

@ RodrigoGraça Lihat Panduan Penggunaan & Contoh tentang menangani transparansi + latar belakang.
emcconville

ini berfungsi untuk kombinasi jpg dan png juga. terima kasih
joydeep bhattacharjee

3
[0-5].pngakan menghasilkan "0.png, 1.png, 2.png, 3.png, 4.png, 5.png", enam file berbeda, tetapi Anda tile 5x1hanya akan mengambil lima file, meninggalkan Anda dengan dua file output. Ini harus menggunakan [0-4].pngatau -tile 6x1.
R. Barrett

79

ImageMagick memiliki alat baris perintah bernama ' convert ' untuk menggabungkan gambar secara horizontal, atau untuk tujuan lain. Saya telah mencoba perintah ini dan bekerja dengan sempurna pada kasus Anda:
Untuk menggabungkan gambar secara horizontal:
convert +append *.png out.png

Untuk menumpuk gambar secara vertikal:
convert -append *.png out.png


yang dapat ditambahkan ke tindakan kustom Thunar dalam bentuk ini (. ex untuk bergabung secara vertikal = up-kota): convert -append %F joined-image.png. Semua gambar yang dipilih akan digabungkan sebagai satu png dalam urutan abjad

1
Jika menggunakan ImageMagick 7+, Anda harus meletakkan gambar yang sedang Anda kerjakan sebelum parameter:convert *.png +append out.png
Mazuhl

7

Sangat sederhana dengan ImageMagick ( brew install imagemagick)

convert +append image_1.png image_2.png new_image_conbined.png

0

Siapa pun yang menggunakan MiniMagickpermata rel dapat menggunakan alat bawaan untuk menggabungkan gambar:

# Replace this with the path to the images you want to combine
images = [
  "image1.jpg",
  "image2.jpg"
]

processed_image = MiniMagick::Tool::Montage.new do |image|
  image.geometry "x700+0+0"
  image.tile "#{images.size}x1"
  images.each {|i| image << i}
  image << "output.jpg"
end

Lihat dokumentasi untuk #geometryopsi menangani pengubahan ukuran dan penempatan. Contoh saat ini akan mengubah ukuran gambar ke 700pxketinggian dengan tetap mempertahankan rasio aspek gambar. +0+0akan menempatkan gambar tanpa celah di antara keduanya.

Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.