Zjednodušené odesílání obrázků [KDE]
Výchozí situace:
Uživatel potřebuje odeslat větší množství obrázků z fotoaparátu e-mailem.
Hromadná úprava v Gimpu či jiných aplikacích je zdlouhavá. Na linuxových stanicích mám Fedoru s KDE.
Skript pro úpravu a odeslání obrázků pomocí Kmailu:
Název souboru: mailimages
#!/bin/sh archive_basename=images.zip archive_dir=/tmp archive=$archive_dir/$archive_basename dialog=$(kdialog --title ' Úprava obrázků pro e-mail' --progressbar 'Úprava obrázků pro e-mail' $#) current_step=0 for src in "$@" do echo "--------------> $src" name=$(basename $src) dst="/tmp/$name" dcop $dialog setLabel "Upravuji $name" convert -geometry 800x600 -quality 75 "$src" "$dst" && zip "$archive" "$dst" && rm "$dst" current_step=$(($current_step+1)) dcop $dialog setProgress $current_step done dcop $dialog setLabel "Otevírám editor e-mailů.." kmail=$(dcopstart kmail) dcop $kmail KMailIface openComposer "" "" "" "" " Připojeno je několik obrázků v archivu $archive_basename" "" "" "$archive" dcop $dialog close kdialog --msgbox "Nyní můžete odeslat svoji e-mailovou zprávu!" --title "Oznámení" rm "$archive"
Umístění do menu Činnosti pod pravým tlačítkem myši:
Soubor s názvem .desktop umístíme do /usr/share/apps/konqueror/servicemenus
[Desktop Entry] ServiceTypes=image/* Actions=mail_images [Desktop Action mail_images] Name=Poslat obrázky e-mailem Exec=mailimages %U
Podobná úprava bez odesílání KMailem:
#!/bin/sh archive_basename=images.zip archive_dir=/tmp archive=$archive_dir/$archive_basename dialog=$(kdialog --title 'Právě probíhá úprava obrázků' --progressbar 'Právě probíhá úprava obrázků' $#) current_step=0 for src in "$@" do echo "--------------> $src" name=$(basename $src) dst="/tmp/$name" dcop $dialog setLabel "Upravuji $name" convert -geometry 800x600 -quality 75 "$src" "$dst" && zip "$archive" "$dst" && rm "$dst" current_step=$(($current_step+1)) dcop $dialog setProgress $current_step done dcop $dialog setLabel "Otevírám výsledek v novém okně.." konqueror=$(dcopstart konqueror /tmp/images.zip) dcop $dialog close kdialog --msgbox "Kliknutím na tlačítko OK vymažete archiv z dočasného adresáře." --title "Oznámení" rm "$archive"<
Zdroje (děkuji):
* Linux + 2/2007: Charles Fleche: Ahtomatizace KDE
* ABC Linuxu: KDE: tipy a triky - III (DCOP a KDialog)