2014-05-22 2 views
0

하단 이미지의 맨 위에 합성 된 다른 이미지로 배경 이미지를 갖고 싶습니다. 최종 이미지에는 최대 너비가 있습니다 (예 : 1000 픽셀이지만 그 이하 일 수 있음). 합성 된 이미지는 너비가 줄어들지 만 항상 아래쪽에 있어야합니다. imagemagick으로 한 명령으로이 모든 작업을 수행하는 방법을 찾지 못하는 것 같습니다.최소 너비이지만 다양한 높이의 이미지 매직 합성물

예를 들어 일부 더미 이미지가 있습니다. 배경을 통해 합성에

이미지 : wide-ish 이 한 폭 960 픽셀이지만, 아직 합성 이미지는 플러시 하단 왼쪽/오른쪽 가장자리는 : 여기 composite image

은 최종 제품의 두 가지 예는 내가 원하는.

narrow 이 이미지는 매우 좁지 만 합성 이미지가 아래쪽/왼쪽/오른쪽으로 플러시되도록 축소되었습니다.

이미지의 크기와 종횡비가 다를 수 있으므로 합성 이미지의 크기를 조정하고 위치를 지정하기 위해 일종의 외부 계산을 수행하지 않아도됩니다. 나는 이것이 imagemagick 안에서 가능해야한다고 생각한다, 그렇지?

답변

0

미리 배경 이미지의 너비를 확인하는 것이 가장 쉽습니다. \(arrows.png -resize "${WIDTH}x" \)

#!/bin/bash 
# Get background width 
WIDTH=`convert background.jpg -format "%w" info:` 
# Apply composite 
convert background.jpg \ 
     \(arrows.png -resize "${WIDTH}x" \) \ 
     -alpha set \ 
     -gravity South \ 
     -compose ATop \ 
     -composite output.png 

일치하는 폭을위한 하위 프로세스이며 -gravity South 하단에 고정 화살표를 유지할 것이다.

rose: logo: wizard:

관련 문제