28.07.2020

Komut satırından toplu resim kırpma

Elimde aynı yerinden kırpılması gereken çok sayıda resim var. Kırpılan resimleri de başka bir klasöre kaydetmem gerek. Bunu komut satırından nasıl yapabilirim diye düşünürken aklıma ffmpeg geldi. Resim kırpma için şu sayfada bulduğum bilgileri poweshell ile birleştirerek aşağıdaki satırı yazdım. Resimlerin asılları D:\kaynak klasöründe resimxxx.png ismiyle bulunuyor (xxx: 3 haneli ardışıl sayılar). Kırpılan resimleri D:\kirpilmis klasörüne kaydedeceğim.

PS> dir D:\kaynak\resim*.png |
% {ffmpeg -i $_ `
-vf "crop=200:200:200:0" `
(Join-Path -Path "D:\kirpilmis" -ChildPath `
(Split-Path $_ -Leaf))}

Burada crop parametresi ile verilen sayılar kırpma işleminin yerini ve boyutlarını tarif ediyor:
crop=genişlik:yükseklik:x:y
x ve y, kırpmanın x ve y koordinatı olarak başlangıç noktası.

Blog sayfasında güzel gözüksün diye satırı backtick (`) karakteri kullanarak böldüm, tek satır yapmak için bu karakterleri çıkarmak gerek. İlk satırda kullanmadım, çünkü dikey çizgi (|) karakteri kullanılabildiği durumlarda satır bölücü olarak iş görüyor.

ffmpeg, uzantıya göre formatı otomatik seçtiği için sadece dosya uzantısını değiştirerek jpg veya başka bir formatta da kayıt yapılabilir.

Hiç yorum yok: