Quelques scripts pour profiter de son scanner sous GNU/Linux
Sous GNU/Linux (et même sous BSD et autres Solaris), les scanners sont très bien gérés grâce au proget SANE. Bien que les interface graphiques pour SANE, comme XSane, soient très abouties, rien de mieux pour une utilisation "courante" de son scanner que les boutons dont il dispose.
Le problème c'est qu'autant les scanners sont bien supportés en tant que tels, autant leurs boutons sont excessivement peu souvent supportés.
Certains, comme moi, seront certainement très frustrés de ne pas pouvoir utiliser les très utiles boutons de leur appareil, et je me suis dit que quelques petits scripts seraient certainement utiles à d'autres.
Attention : j'utilise Gnome, et les scripts suivants utilisent zenity. Si vous êtes sous KDE, mieux vaut utiliser kommander (je vous laisse le soin d'adapter les scripts), mais vous pouvez très bien utiliser zenity… ça sera moins bien intégré, c'est tout.
Un préalable au bon fonctionnement de ces scripts est, bien entendu, qu'un scanner soit déjà connecté à la machine, et que se scanner soit reconnu et configuré… en plus, pour le premier, d'avoir une imprimante connectée, allumée, et configurée.
Comme d'habitude, un petit tour dans le man ne fera de mal à personne.
Photocopie
Dépendances : tiff2ps (paquet libtiff-tools), zenity (ou kommander)
Ce que fait le script : scanne vers un fichier TIFF, le convertit en PostScript et imprime le résultat.
#!/bin/bash if `zenity --question --text="Assurez-vous d'avoir aligné le document sur le bord DROIT de la fenêtre puis cliquez sur «Valider»" --title="Photocopier un document"` then scanimage --format tiff --mode Gray --resolution 300 -l 0 -t 0 -x 210mm -y 297mm -p > tmp.tiff tiff2ps -z -w 8.27 -h 11.69 tmp.tiff | lpr rm -f tmp.tif else zenity --info --text="Photocopie annulée" fi
Scan2PDF
Dépendances : tiff2pdf (paquet libtiff-tools), zenity (ou kommander), evince (kpdf sous kde)
Ce que fait le scritpt : scanne vers un fichier TIFF, le convertit en PDF et l'enregistre là où l'a indiqué l'utilisateur. Si l'utilisateur le souhaite, l'affiche à l'écran.
#!/bin/bash if `zenity --question --text="Assurez-vous d'avoir aligné le document sur le bord DROIT de la fenêtre puis cliquez sur «Valider»" --title="Scanner un document vers PDF"` then pdf=$(zenity --file-selection --save --confirm-overwrite --filename="$HOME/Desktop/scan.pdf") if [[ -n $pdf ]] then scanimage --format tiff --mode Gray --resolution 300 -l 0 -t 0 -x 210mm -y 297mm -p > tmp.tiff tiff2pdf -o $pdf -z -p A4 -r d -c scan2pdf -a $(whoami) ./tmp.tiff rm -f tmp.tiff if `zenity --question --text="Le document va s'ouvrir" --title="Scan terminé"` then evince $pdf fi else zenity --info --text="Copie annulée" fi else zenity --info --text="Copie annulée" fi
Scan2Gimp
Dépendances : zenity (ou kommander),tempfile gimp
Ce que fait le scritpt : scanne vers un fichier TIFF sauvegardé sur le bureau avec un nom unique et l'ouvre avec Gimp.
#!/bin/bash if `zenity --question --text="Assurez-vous d'avoir aligné le document sur le bord DROIT de la fenêtre puis cliquez sur «Valider»" --title="Scan vers Gimp"` then tmp="$(tempfile -d "$HOMEDesktop" -p "scan-" -s ".tiff")" scanimage --format tiff --mode Gray --resolution 300 -l 0 -t 0 -x 210mm -y 297mm -p > $tmp gimp $tmp else zenity --info --text="Scan annulé" fi


Bonjour,
J’ai essayé le script pour la photocopie… malheureusement il ne fonctionne pas chez moi..
voici ce que donne le script :
copie.sh: 9: gt: not found
copie.sh: 9: tmp.tiff: not found
TIFFOpen: tmp.tiff: Cannot open.
[…]
lpr: Erreur - stdin est vide, donc aucune tâche n’a été envoyée.
Je suis sous Ubuntu 9.04. Mon scanner et mon imprimante sont en reseau… est-ce la la source du problème ? J’ai lu le man de scanimage mais rien lu de probant. peut-etre connaissez-vous d’ou vient l’erreur ?
Merci
Concernant «gt: not found» c’est une coquille, un caractère a mal été affiché, il s’agit du > remplacez «>» par «>» et ça devrait être ok.
Notez que si vous avez plusieurs périphériques de capture d’image (un scanner + web cam) et que Xsane les détecte tous les 2, il conviendra de spécifier le périphérique à utiliser. Reportez-vous au manuel de scanimage pour en savoir plus)
Pour lpr, par défaut, ça imprimera sur l’imprimante par défaut, je vous laisse le soin de lire le man de lpr pour savoir comment spécifier une autre imprimante.
Bonjour
Et-ce normal que la conversion en postscript décale la page (il manque le bas)?
Merci
@TF: est-ce que c’est décalé ussi en mode image ?