ImageMagick image oluşturma

ImageMagick ile image leriniz üzerinde birçok işlem yapabilirsiniz. Ben Android için hazırlayacağım screenshot ları oluşturmak için bir bash script hazırladım. Eğer benzer kalıplarda birçok image oluşturacaksanız kendi scriptinizi hazırladıktan sonra inanılmaz zaman kazanabilirsiniz.
Bazı örnekler:

ss_device.png image i üzerine 305×486 koordinattan başlamak üzere ss_long_click_20.png image ini birleştir:

#composite -geometry +305+486 ss_long_click_20.png ss_device.png output.png

output.png image i üzerinde 140×250 koordinatlarından başlamak üzere 1418×2010 kadarlık bir alanı kes ve sonucu output1.png üzerine oluştur:

#convert -crop 1418x2010+140+250 output.png output1.png

arka fonu olmayan (transparent) beyaz renkli Freesans fontu ile 880×300 boyutunda ve bu boyuta ortalanmış bir yazı oluştur:

#convert -background none -fill white -font Freesans -size 880x300 -gravity Center caption:'Ben bir yazıyım' output-text.png

ImageMagick kullanımı ile ilgili bu linki kullanabilirsiniz:
http://www.imagemagick.org/Usage/

Çok resmi bir yazım olmasa da aşağıdaki script ile biçimlendirilmiş image lerimi oluşturuyorum:

#!/bin/bash
if [ $# -eq 0 ]
then
echo "No arguments supplied. Requires imagemagick"
echo "usage: #generate-ss-with-device.sh <screenshot file name> <caption text> <output image file name>"
fi

echo arguments: $@
# Put screenshot to inside device image
composite -geometry +305+486 $1.png ss_device.png output.png
# Crop upper and bottom side includes virtual back/home buttons
convert -crop 1418x2010+140+250 output.png output1.png
# resize image to 1080x1920 for google play
convert -resize 1080x1920 output1.png output2.png
# composite generated screenshot with device image with background image
composite -geometry +0+389 output2.png ss_1080x1920-blue-bg.png output3.png
# generate text
convert -background none -fill white -font Freesans -size 880x300 -gravity Center caption:"$2" output-text.png
# composite screenshot with text image and produce final result
convert output3.png -page +100+45 output-text.png -layers flatten $1_device.png

Leave a Reply