[PLUTO-help] Ridimensionamento gruppo di foto
Gian Uberto Lauri
GianUberto.Lauri a eng.it
Ven 13 Gen 2006 09:37:40 CET
>>>>> "mz" == m4x z1x <massimo a nonsonohemingway.org> writes:
mz> Domanda decisamente da newbie... Mi sembrava una cosa abbastanza
mz> semplice, ma non sono riuscito a trovare una soluzione efficace.
mz> Mi trovo spesso a dover ridimensionare gruppi di foto (tra le 10 e
mz> le 30) da inserire su internet. Di norma passo da 1600x1200 a
mz> 800x600. Con che programma posso farlo semplicemnte, senza aprire
mz> ogni foto. Ho provato F-spot, Digikam, Gwenview e altri, ma non h
mz> otrovaot l'opzione giusta. Avete qualche programma da suggerire e
mz> il metodo da usare per fare il tutto? Per informazioni, uso
mz> Mandriva 2005. Grazie, m4x
Installa Imagemagick
E poi prendi spunto dallo script qui sotto, lo fa per una foto, ma con
un opportuno script, una volta adattato, vai in automatico su una
carrettata di foto, individua automaticamente quelle in verticale
(portrait) da quelle in orizzontale (landscape), al momento ha un
problema con eventuali foto quadrate...
Cambiati i valori di ridimensionamento come ti fa comodo.
#!/bin/bash
#
# (C) G.U. Lauri - Distribuito sotto GNU GPL V2 o successiva
#
# Elabora un immagine. Usando un for della shell puoi lavorare su una
# serie di immagini in automatico. Forse non è un razzo, ma fa tutto
# da solo, lo lanci e poi torni a vedere se ha finito...
# dimensioni per i thumbnail
TH_LAND="200x133"
TH_PORT="133x200"
# dimensioni full size
FS_LAND="500x376"
FS_PORT="376x500"
if [ $# = 0 ]
then
echo 1>&2 "Uso: "$0" immagine [destinazione]"
exit 1
elif [ $# -gt 3 ]
then
echo 1>&2 "Argomenti in eccesso ignorati"
fi
SORGENTE=$1
if [ $# = 2 ]
then
DESTINAZIONE=$2
else
DESTINAZIONE=$1
fi
# Io uso chiamare i thumbnail thn_
if [ "."`dirname $DESTINAZIONE` = "." ]
then
THUMBNAIL="thn_"`basename $DESTINAZIONE`
else
THUMBNAIL=`dirname $DESTINAZIONE`"/thn_"`basename $DESTINAZIONE`
fi
echo "Trasformo "$SORGENTE" in "$DESTINAZIONE" con thumbnail "$THUMBNAIL
# pesca l'aspect ratio
# il terzo campo dell'output di identify è ALTEZZAxLARGHEZZA, se
# ALTEZZA fratto LARGHEZZA è maggiore di uno allora la foto è in
# verticale.
if [ `identify $SORGENTE | awk '{ print $3 }' | awk -Fx '{ print ($1/$2 > 1)?"L":"P"}'` == "P" ]
then
TH_SIZE=$TH_PORT
FS_SIZE=$FS_PORT
else
TH_SIZE=$TH_LAND
FS_SIZE=$FS_LAND
fi
convert -size $FS_SIZE $SORGENTE -resize $FS_SIZE +profile "*" $DESTINAZIONE
convert -size $TH_SIZE $SORGENTE -resize $TH_SIZE +profile "*" $THUMBNAIL
# fine script
--
/\ ___
/___/\__|_|\_|__|___Gian Uberto Lauri_____________________
//--\ | | \| | Integralista GNUslamico
\/ e allevatore di bug da competizione
More information about the pluto-help
mailing list