2016-04-01 5 views
0

Ich habe 2 Bilder der gleichen Größe, genannt image1.png und image2.png. Gibt es in ImageMagick eine Möglichkeit, die beiden Bilder zusammenzuführen, indem Sie die ungeraden Zeilen von image1.png nehmen und mit der geraden Linie von image2.png zusammenführen?Wie kann ich zwei Bilder mit ImageMagick verschachteln?

Antwort

0

Sicher stellen abwechselnde Reihen transparent:

# Make red test image 
convert -size 300x200 xc:red red.png 

enter image description here

# Make blue test image 
convert -size 300x200 xc:blue blue.png 

enter image description here

# Merge with alternate lines made transparent 
convert red.png \(blue.png -alpha on -channel A -fx 'j%2' \) -composite result.png 

enter image description here

Oder eine alternative Möglichkeit, darüber nachzudenken ist, beide Bilder zu laden und dann vier Pixel von entweder den ersten (u) oder den zweiten (v) in Abhängigkeit von der Reihe:

convert red.png blue.png -fx 'j%2 ? u : v' result.png 

enter image description here

On Fenster, die beiden kommen wie:

REM Do Windows style commands 
convert red.png ^(blue.png -alpha on -channel A -fx "j%2" ^) -composite result.png 

und

REM Windows style 
convert red.png blue.png -fx "j%2 ? u:v" result.png 
+0

Ich verwende die Eingabeaufforderung unter Windows für ImageMagick, also denke ich, dass es Kompatibilitätsprobleme gibt. Die erste Methode funktioniert nicht. Der umgekehrte Schrägstrich in cmd führt zu einem Fehler. Ich habe versucht, Ihre alternative Methode zu verwenden, obwohl rot und blau mit den Namen meiner Bilder zu ersetzen, und die CPU schießt für ein paar Sekunden zu 100%, was für das Rendering Bild normal erscheinen mag, aber dann keine Ausgabedatei. – CSDD

+0

Unter Windows müssen Sie einfache Anführungszeichen durch doppelte Anführungszeichen ersetzen. Sie können auch ein Caret ('^') vor Klammern und Prozentzeichen oder doppelte Prozentzeichen benötigen. –

+0

Ich habe am Ende einige Windowsy-Versionen für Sie gemacht. –