Un script pour créer un effet de bordure/ombre sous une image, directement dans Nautilus

Puisque je suis encore sous GNU/Linux, j’en profite pour partager avec vous un script pour Nautilus (le navigateur de fichiers de Ubuntu) que j’ai écrit pas plus tard qu’aujourd’hui et qui permet :

  • De réduire automatiquement la taille d’une image faisant plus de 450 pixels de large (la taille des images affichées sur le blog, la valeur est paramétrable dans le script).
  • D’ajouter une bordure blanche de 5 pixels.
  • D’ajouter une ombre portée sur un fond transparent.
    (Voyez les images ci-dessous pour avoir une idée du résultat.)
  • D’enregistrer la nouvelle image au format PNG.
  • De créer un lien formaté en Markdown et de le coller dans le presse-papier. Pour le récupérer ensuite dans l’éditeur de texte. Le lien est prévu pour un blog WordPress, mais rien ne vous empêche de l’adapter à vos besoins.


L’idée est de créer un script qui fait à peu près la même chose que cet AppleScript, sous Mac OS X.

Même si on en est encore loin d’un point de vue strictement esthétique, c’est un début et ça m’a servi de prétexte pour apprendre à utiliser imagemagick, un outil de traitement des images en ligne de commande qui est assez fortiche, mais dont la documentation n’est pas la plus… conviviale.

Le second objectif est, toujours comme sous Mac OS X, de simplifier la rédaction des billets du blog en Markdown en automatisant tout ce qui peut l’être.

Si je n’ai toujours pas trouvé d’équivalent à Textmate qui permet, entre autres choses, d’uploader les images sur le blog par simple glisser-déposer du fichier sur la fenêtre de l’éditeur, j’ai au moins trouvé un moyen de créer automatiquement le lien Markdown correspondant, qu’il suffit ensuite de coller dans l’éditeur de texte — il faudra quand même télécharger l’image vous-même sur le serveur : je travaille sur l’upload FTP, mais pour l’instant je ne suis pas arrivé à grand-chose 😉

Bref, si c’est loin d’être parfait, c’est mieux que rien : au cas où ça intéresserait quelqu’un, voici ce petit script. (script mis à jour le 2 avril 2011)

Il est pas mal commenté, vous devriez pouvoir l’utiliser sans difficulté. Notez que vous aurez besoin de imagemagick (installé par défaut sur Ubuntu) et de xclip (sudo apt-get install xclip), pour la gestion du presse-papier.

Pour l’installer, placez le fichier dans le dossier ~/.gnome2/Nautilus-scripts. Nommez-le à votre guise. Puis, rendez-le exécutable via ses Propriétés :

script002-web

Une fois copié à sa place, il suffit d’un clic droit sur un fichier png (un fichier sans espace dans son nom) pour lancer le script :

script001-web

Un nouveau fichier est créé, avec bordure et ombrage. Dès la conversion terminée, faites un ctrl+v dans votre éditeur de texte pour récupérer le lien Markdown proprement formaté.

Suggestions et conseils sont les bienvenus.

Dans le même genre, on peut vous proposer :