Beş boyutta resmim var: 600x30, 600x30, 600x30, 600x30, 810x30. İsimleri sırasıyla: 0.png, 1.png, 2.png, 3.png, 4.png'dir.
ImageMagick ile 3210x30 boyutunda bir görüntü oluşturmak için bunları yatay olarak nasıl birleştirebilirim?
Beş boyutta resmim var: 600x30, 600x30, 600x30, 600x30, 810x30. İsimleri sırasıyla: 0.png, 1.png, 2.png, 3.png, 4.png'dir.
ImageMagick ile 3210x30 boyutunda bir görüntü oluşturmak için bunları yatay olarak nasıl birleştirebilirim?
Yanıtlar:
ImageMagick montage
yardımcı programla birlikte gelir. Montaj, her bir görüntüyü yan yana ekleyerek, her görüntü ( -geometry
) ile genel düzen ( -tile
) arasındaki aralığı ayarlamanıza olanak tanır .
montage [0-5].png -tile 5x1 -geometry +0+0 out.png
Diğer örnekler Montaj Kullanımı sayfasında bulunabilir.
[0-5].png
"0.png, 1.png, 2.png, 3.png, 4.png, 5.png", altı farklı dosya tile 5x1
üretecek , ancak siz bunlardan yalnızca beşini alarak size iki çıktı dosyası bırakacaksınız. Bu ya kullanmalı [0-4].png
ya da -tile 6x1
.
ImageMagick, görüntüleri yatay olarak birleştirmek veya başka bir amaçla ' dönüştürmek ' adlı komut satırı aracına sahiptir . Bu komutu denedim ve sizin durumunuzda mükemmel bir şekilde çalıştım:
Resimleri yatay olarak birleştirmek için:
convert +append *.png out.png
Resimleri dikey olarak istiflemek için:
convert -append *.png out.png
convert -append %F joined-image.png
. Seçilen tüm resimler alfabetik sıraya göre tek bir png olarak birleştirilecektir
convert *.png +append out.png
Görüntüler aynı yüksekliğe sahip değilse
Tümünün yüksekliğini şu -resize
seçenekle sabitleyebilirsiniz, örneğin 400 piksel yüksekliğini sabitleme:
convert +append image_1.png image_2.png -resize x400 new_image_conbined.png
MiniMagick
Raylar taşını kullanan herkes, görüntüleri birleştirmek için yerleşik aracı kullanabilir:
# 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
Check out belgeler için #geometry
sap yeniden boyutlandırma ve yerleştirme için seçenekler. Mevcut örnek 700px
, görüntünün en boy oranını korurken görüntüleri bir yüksekliğe yeniden boyutlandıracaktır . +0+0
görüntüyü aralarında boşluk olmayacak şekilde yerleştirir.