Sadık KILIÇ

Web Tabanlı Hafıza Yerleşimi

Komut satırından resimleri boyutlandırmak

Komut satırından resimleri yeniden boyutlandırmak (resizing) için convert veya mogrify gibi basit programlar kullanabilirsiniz. Bu araçlar sisteminizde yoksa imagemagick isimli paketi kurarak edinebilirsiniz.

apt-get install imagemagick

identify komutu ile resim hakkında bazı bilgiler alınabilir.

identify image1.jpg 
image1.jpg JPEG 495x368 495x368+0+0 8-bit DirectClass 21KiB 0.000u 0:00.000

convert komutu ister yüzde vererek ister boyut belirterek resim yeniden boyutlandıralabilir.
Kullanımı şu şekilde;

convert -resize <boyut> <dosya_ismi> <yeni_dosya_ismi>

Aşağıdaki image1.jpg isimli resmi yüzdesel olarak veya boyut vererek büyütme/küçültme için verdiğim örneği inceleyin.

convert -resize 200% image1.jpg buyuk_image1.jpg
convert -resize 640 image1.jpg buyuk_image2.jpg

ilk satırda resmi iki katına (yani %200) büyüttük, ikinci satırda resmin genişliği 640 px olsun istedik, en boy oranına göre yükseklik otamatik belirlendi bu durumda.

Oluşan dosyaların bilgilerine yine identify ile bakarsak resim boyutlarının belirttiğimiz gibi değiştiğini görebiliriz.

identify buyuk_image*
buyuk_image1.jpg JPEG 990x736 990x736+0+0 8-bit DirectClass 50.9KiB 0.000u 0:00.000
buyuk_image2.jpg[1] JPEG 640x476 640x476+0+0 8-bit DirectClass 30.6KiB 0.000u 0:00.000

Örneğin bir klasördeki tüm jpg uzantılı resimlerin boyutlarını değiştirmek istesek aşağıdaki gibi bir for döngüsü işimizi görecektir.

for i in `ls *.jpg`
 do
   convert -resize 150% $i resized_${i}
 done

resized ön ekiyle isimlendirilen resimlerin bir buçuk katına büyümüş olduğunu görebilirsiniz.

Not: Burda convert programının resize özelliği üzerinde durdum ama yapabilecekleri çok daha fazla. isterseniz “man convert” yazarak daha detaylı bilgi alabilirsiniz.

Ayrıca resimleri boyutlandırmak için mogrify aracı da kullanılabilir. Aşağıdaki örnek, orjinal dosyanın boyutlarında değişiklik yapar

mogrify -resize 640 image1.jpg

, , ,

One thought on “Komut satırından resimleri boyutlandırmak

Leave a Reply

Your email address will not be published. Required fields are marked *