Yükseltmeden görüntüyü yeniden boyutlandırmak için terminaldeki “yongaları” nasıl kullanıyorsunuz?


5

Mac OS X'teki görüntüleri komut istemi (ve / veya quicksilver) aracılığıyla maksimum 500px genişliğe veya yüksekliğe kadar yeniden boyutlandırmak için kullandığım bazı kodlarım var. Tek sorun, eğer orijinal resim 500 piksel genişlik veya yükseklikten küçükse, fişlerin görüntüyü yükseltmesidir. Sadece bu görüntüleri atlamasını istiyorum.

Bunu nasıl yapabilirim?

Bu benim kodum:

#! / Bin / bash

"$ @" içindeki ARG için
    yap
        yips -Z 500 -s biçiminde jpeg "$ ARG" - hakkında "$ {ARG%. *}. jpg"
tamam

Yanıtlar:


4

Çıktısını işleyin sips --getProperty pixelHeight filename.extve sips --getProperty pixelWidth filename.extve istenirse sadece yeniden boyutlandırma işlemi gerçekleştirirken, bir durumda kullanın.


#!/bin/bash
height=`sips --getProperty pixelHeight url.png | sed -E "s/.*pixelHeight: ([0-9]+)/\1/g" | tail -1`
width=`sips --getProperty pixelWidth url.png | sed -E "s/.*pixelWidth: ([0-9]+)/\1/g" | tail -1`

if [[ $height -gt 500 || $width -gt 500 ]]; then
    growlnotify -m "large file needs reducing"
fi

Gerisini kendi başınıza yapabilirsiniz.


Yalnız yongaları kullanmak mümkün görünmüyor.
Daniel Beck

Teşekkürler! Koşullu ifadeyle nasıl yapılacağına bir örnek verebilir misiniz?
cwd

@cwd Düzenlenmiş gönderiye bakın
Daniel Beck

0

Bu, görüntünün genişliğini ve yüksekliğini tek komutta okur

#!/bin/bash
size=($(sips -g pixelWidth -g pixelHeight $theFile | grep -o '[0-9]*$'))

if [[ ${size[0]} -gt 500 || ${size[1]} -gt 500 ]]; then
    growlnotify -m "large file needs reducing"
fi
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.