Vor einigen Jahren hatte ich ein paar Scripte für den nautilus vorgestellt.
Ich habe heute einen kleinen Bug beseitigt und vom Resize Script 2 Unterarten erstellt.
Die Scripte gehören in $HOME/.local/share/nautilus/scripts/
Sie müssen mit chmod +x ausführbar gemacht werden, damit sie im Kontext Menü des Nautilus sichtbar sind.
Optional durch einschalten der Zeilen um exiftool werden die EXIF Tags auf die reduzierte Version übernommen
resize_auto_orient.sh
!/bin/bash # # Titel: resize_auto_orient.sh # Autor: Bed [@] zockertown.de # Web: zockertown.de/s9y/ # Version 0.4 # Voraussetzung: Benötigt wird Imagemagick für das Consolentool convert # und mogrify # Zweck: skaliert die Bilder auf 1280x1024, wenn im Quellbild die # Orientierungshinweise intakt sind, # wird das Bild korrekt gedreht. # Das skalierte Bild wird mit einer Textnotiz versehen, wenn in # der Schleife der mogrify disabled wird (durch einfügen des '#') # wird das Branding nicht durchgeführt. # Die Zeilen mit exiftool und rm sind optional und übernehmen die EXIF Werte vom Original. count=$(/bin/echo $NAUTILUS_SCRIPT_SELECTED_URIS|wc -w) teil=$[100 / $count ] teiler=$teil ( for file in $NAUTILUS_SCRIPT_SELECTED_URIS; do file_name=$(echo $file | sed -e 's/file:\/\///g' -e 's/\%20/\ /g' -e 's/.*\///g') file_folder=$(echo $file | sed -e 's/file:\/\///g' -e 's/\%20/\ /g' -e "s/$file_name//g") convert -auto-orient -strip -geometry 1280x1024 -quality 80 "$file_folder/$file_name" "${file_folder}/${file_name}_resized_1280x1024.jpg" # exiftool -tagsFromFile IMG_1857.JPG "$file_folder/$file_name" "${file_folder}/${file_name}_max_1024kb.jpg" # rm "${file_folder}/${file_name}_max_1024kb.jpg_original" teiler=$[$teiler + $teil] echo $teiler mogrify -pointsize 10 -fill gray -gravity SouthWest -draw "text 10,20 'Copyright Bernd Dau'" "${file_folder}/${file_name}_resized_1280x1024.jpg" done ) | (zenity --progress --percentage=$teil --auto-close)
resize_auto_orient-max-256kb.sh
#!/bin/bash # # Titel: resize_auto_orient-max-256kb.sh # Autor: Bed [@] zockertown.de # Web: zockertown.de/s9y/ # Version 0.4 # Voraussetzung: Benötigt wird Imagemagick für das Consolentool convert # und mogrify # Zweck: skaliert die Bilder auf 1280x1024, wenn im Quellbild die # Orientierungshinweise intakt sind, # wird das Bild korrekt gedreht. # Es wird das Bild so komprimierrt, dass es den eingestellten Wert (hier 256KB) nicht überschreitet # Dies ist für Foren nützlich, wenn die nur eine begrenzte File_size erlauben # Das skalierte Bild wird mit einer Textnotiz versehen, wenn in # der Schleife der mogrify disabled wird (durch einfügen des '#') # wird das Branding nicht durchgeführt. count=$(/bin/echo $NAUTILUS_SCRIPT_SELECTED_URIS|wc -w) teil=$[100 / $count ] teiler=$teil ( for file in $NAUTILUS_SCRIPT_SELECTED_URIS; do file_name=$(echo $file | sed -e 's/file:\/\///g' -e 's/\%20/\ /g' -e 's/.*\///g') file_folder=$(echo $file | sed -e 's/file:\/\///g' -e 's/\%20/\ /g' -e "s/$file_name//g") convert -auto-orient -strip -define jpeg:extent=256kb -geometry 1280x1024 "$file_folder/$file_name" "${file_folder}/${file_name}_max_256kb_1280x1024.jpg" teiler=$[$teiler + $teil] echo $teiler mogrify -pointsize 10 -fill gray -gravity SouthWest -draw "text 10,20 'Copyright Bernd Dau'" "${file_folder}/${file_name}_max_256kb_1280x1024.jpg" done ) | (zenity --progress --percentage=$teil --auto-close)
shrink-max_256k.sh (Natürlich muß man sich im Klaren sein, dass hier evtl. die Bildqualtität leidet. Für Landschaftsaufnahmen von Kamera Auflösung in 3MB auf 256KB bleibt das nicht aus)
#!/bin/bash # # Titel: shrink-max_256k.sh # Autor: Bed [@] zockertown.de # Web: zockertown.de/s9y/ # Version 0.4 # Voraussetzung: Benötigt wird Imagemagick für das Consolentool convert # und mogrify # Zweck: Die Auflösung der Bilder wird nier nicht verändert. Wenn im Quellbild die # Orientierungshinweise intakt sind, # wird das Bild korrekt gedreht. # Es wird das Bild so komprimiert, dass es den eingestellten Wert (hier 256KB) nicht überschreitet # Dies ist für Foren nützlich, wenn die nur eine begrenzte File_size erlauben # Das skalierte Bild wird mit einer Textnotiz versehen, wenn in # der Schleife der mogrify disabled wird (durch einfügen des '#') # wird das Branding nicht durchgeführt. count=$(/bin/echo $NAUTILUS_SCRIPT_SELECTED_URIS|wc -w) teil=$[100 / $count ] teiler=$teil ( for file in $NAUTILUS_SCRIPT_SELECTED_URIS; do file_name=$(echo $file | sed -e 's/file:\/\///g' -e 's/\%20/\ /g' -e 's/.*\///g') file_folder=$(echo $file | sed -e 's/file:\/\///g' -e 's/\%20/\ /g' -e "s/$file_name//g") convert -auto-orient -strip -define jpeg:extent=256kb "$file_folder/$file_name" "${file_folder}/${file_name}_max_256kb.jpg" teiler=$[$teiler + $teil] echo $teiler mogrify -pointsize 10 -fill gray -gravity SouthWest -draw "text 10,20 'Copyright Bernd Dau'" "${file_folder}/${file_name}_max_256kb.jpg" done ) | (zenity --progress --percentage=$teil --auto-close)