[bglug] KDE-COME AGGIORNARE MINIATURE
Fabio
fabio.c.ditta@tiscali.it
Lun 3 Dic 2007 11:26:43 CET
Fabio ha scritto:
> Ciao a tutti,
>
> l'altra sera ho scoperto il programma "exiftran" che permette di
> ruotare le fotografia senza perdita di qualità.
> Infatti uno dei problemi della rotazione immagini è proprio la perdita
> di qualità verificabile dal fatto che il file modificato non ha mai le
> stesse dimensioni dell'originale (potrebbe anche essere maggiore, ma
> questo significa solo che la foto è stata trattata come tale, quindi
> letta, ruotata e salvata, ma per salvarla bisogna definire la
> compressione e questa non è mai come l'originale).
> Exiftran credo lavori in un modo completamente diverso, fatto sta che
> l'immagine ruotata ha le stesse dimensioni (in byte) dell'originale.
>
> Bene, dopo questa premessa, eccovi il mio problema.
>
> Richiamo il programma per ruotare l'immagine mantenendo data e ora
> originali e sovrascrivendo lo stesso file. La miniatura di Konqueror
> non si aggiorna, se apro la foto la vedo correttamente ruotata. Anche
> facendo aggiorna con F5 la miniatura non cambia. Se invece dico al
> programma di modificare data e ora la miniatura viene automaticamente
> aggiornata.
> Pensavo di cancellare manualmente (poi sarà fatto con uno script) la
> miniatura, ma i file prendono nomi differenti da quelli della foto.
>
> Per ora utilizzo ShowImg (che usavo anche per ruotare le foto) dove
> selezionando le miniature permette di aggiornarle, ma volevo fare un
> qualcosa di automatico.
>
> Avete idee?
>
> Grazie, Fabio.
>
>
Vi avevo posto la mia questione, ho trovato questa soluzione e volevo
rendervi partecipi, magari può servirvi.
Innanzitutto ho aggiunto delle voci nel menu contestuale di Konqueror in
modo da selezionare direttamente da Konqueror tutte le foto da ruotare
(quelle nello stesso senso).
La cosa è molto semplice, si crea un file con estensione obbligatoria
"desktop" e con il nome che preferite e lo si copia nella cartella
~/.kde/share/apps/konqueror/servicemenus
Nel file si mettono i dati per il menu contestuale, il mio file è così:
[Desktop Entry]
ServiceTypes=image/jpeg
Actions=ruotaSensoOrario;ruotaSensoAntiOrario
[Desktop Action ruotaSensoOrario]
Name=ruota in senso orario - by Crovy
Exec=~/Programmi/script/rFoto.sh 9 %f
Icon=/usr/share/icons/crystalsvg/16x16/actions/rotate_cw.png
[Desktop Action ruotaSensoAntiOrario]
Name=ruota in senso anti-orario - by Crovy
Exec=~/Programmi/script/rFoto.sh 2 %f
Icon=/usr/share/icons/crystalsvg/16x16/actions/rotate_ccw.png
Le righe che fanno riferimento alle icone "Icon" forse dovete
personalizzarle, ma potete anche eliminarle. Mentre le righe che fanno
riferimento allo script di rotazione foto "Exec" dovrete adattarle al
nome e al percorso di dove metterete lo script che segue.
Questo è lo script che ruota la foto (viene richiamato più volte da
konqueror per ogni foto selezionata) mantenendo data e ora originali,
sovrascrivendo la foto stessa e aggiornando le miniature.
#!/bin/bash
echo ROTAZIONE FOTO "$2"
echo -n file://"$2" > "$2.md5"
exiftran -$1ip "$2"
md5print=`md5sum "$2.md5"`
echo MD5 = $md5print
name=${md5print:0:32}
echo name = $name
rm "$2.md5"
if [ -e ~/.thumbnails/normal/$name.png ]; then
rm ~/.thumbnails/normal/$name.png
fi
if [ -e ~/.thumbnails/large/$name.png ]; then
rm ~/.thumbnails/large/$name.png
fi
exit
In pratica il nome del file delle miniature è l'md5 del percorso+nome
della foto (ribadisco, non è l'md5 del file della foto).
Per aggiornarle non ho trovato niente di meglio che cancellare la
miniatura, funziona ma forse esiste un metodo più ortodosso per farlo
fare direttamente al processo che crea le miniature. Io non l'ho
trovato, qualcuno ne sa qualcosa?
Altro problemino sul quale chiedo aiuto, questo script non aggiorna le
miniature se nel nome del file o nel percorso sono presenti degli spazi
(e forse altri caratteri speciali). La foto viene ruotata ma il nome del
file della miniatura non riesco a ricostruirlo. Anche qui, se qualcuno
ne sa qualcosa mi farebbe un favore.
Io uso kde, magari qualcuno nella lista sa come fare il menu contestuale
per gli altri file browser così da completare il quadro di questa
piccola utility?
Grazie, Fabio.
Maggiori informazioni sulla lista
bglug