Bilder nebeneinander zusammenführen (horizontal)

98

Ich habe fünf Bilder mit Größen: 600 x 30, 600 x 30, 600 x 30, 600 x 30, 810 x 30. Ihre Namen sind: 0.png, 1.png, 2.png, 3.png, 4.png.

Wie füge ich sie horizontal zusammen, um mit ImageMagick ein Bild der Größe 3210 x 30 zu erstellen?

Sasuke Kun
quelle

Antworten:

117

ImageMagick wird mit dem montageDienstprogramm geliefert. Bei der Montage wird jedes Bild nebeneinander angehängt, sodass Sie den Abstand zwischen jedem Bild ( -geometry) und dem allgemeinen Layout ( -tile) anpassen können .

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

Weitere Beispiele finden Sie auf der Seite Montage Usage

Emcconville
quelle
1
Die Montage-Dokumentation gibt an, dass die [0-5] -Syntax für Linux gilt. Wenn Sie also unter Windows arbeiten, müssen Sie alle Dateinamen eingeben / generieren. dh Montage 0.png 1.png 2.png 3.png 4.png ...
Dan
3
Du bist der beste! Ich habe mein ganzes Leben danach gesucht!
Robin
@ RodrigoGraça Siehe Handbuch zu Verwendung und Beispielen zum Umgang mit Transparenz + Hintergründen.
Emcconville
Es funktioniert auch für die Kombination von JPG und PNG. danke
joydeep bhattacharjee
3
[0-5].pngerzeugt "0.png, 1.png, 2.png, 3.png, 4.png, 5.png", sechs verschiedene Dateien, aber Sie tile 5x1nehmen nur fünf davon, so dass Sie zwei Ausgabedateien haben. Dies sollte entweder [0-4].pngoder verwenden -tile 6x1.
R. Barrett
79

ImageMagick verfügt über ein Befehlszeilenprogramm mit dem Namen " Konvertieren ", mit dem Bilder horizontal oder für andere Zwecke zusammengeführt werden können. Ich habe diesen Befehl ausprobiert und arbeite perfekt an Ihrem Fall:
So verbinden Sie Bilder horizontal:
convert +append *.png out.png

So vertikal stapeln Sie Bilder:
convert -append *.png out.png

Tesmojones
quelle
Dies kann in dieser Form zu einer benutzerdefinierten Thunar-Aktion hinzugefügt werden (z. B. vertikal beitreten = in der Stadt) : convert -append %F joined-image.png. Alle ausgewählten Bilder werden als ein PNG in alphabetischer Reihenfolge verbunden
1
Wenn Sie ImageMagick 7+ verwenden, müssen Sie die Bilder, an denen Sie arbeiten, vor die Parameter stellen:convert *.png +append out.png
Mazuhl
7

Sehr einfach mit ImageMagick ( brew install imagemagick)

convert +append image_1.png image_2.png new_image_conbined.png
Thiago
quelle
0

Jeder, der das MiniMagickRails-Juwel verwendet, kann das integrierte Tool zum Zusammenführen von Bildern verwenden:

# 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

Überprüfen Sie die aus Dokumentation für #geometryOptionen Griff Redimensionierung und Platzierung. Im aktuellen Beispiel wird die Größe von Bildern auf eine 700pxHöhe geändert, während das Seitenverhältnis des Bildes beibehalten wird. +0+0platziert das Bild ohne Lücken zwischen ihnen.

Myk Klemme
quelle