[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: Capture d'écran avec wmctrl+import



Bonsoir,

Ben non, ça ne passe pas.
Pourquoi compliquer avec 'awk' ?
Un bon vieux 'cut' fait l'affaire.

L'ID de la fenêtre s'obtient aussi facilement :

id="$(wmctrl -l | grep -i -G "firefox$" | cut -f1 -d" ")"

Et c'est la commande dessous qui échoue :

 import -window "$id" screenshot.png

Pas besoin du timestamp ; je n'en suis qu'aux tests.

pierre estrem


Le 12/10/2021 à 04:50, Bernard Schoenacker a écrit :
----- Mail original -----
De: "Pierre ESTREM"<pierre.estrem@free.fr>
À: "ML Debian User French"<debian-user-french@lists.debian.org>
Envoyé: Mardi 12 Octobre 2021 03:52:33
Objet: Capture d'écran avec wmctrl+import

Bonjour,

Sous Debian/XFCE je tente de
capturer l'écran d'un bureau qui n'a pas le focus pour le passer à la
moulinette de tesseract.
Par exemple dans celui-ci j'ai une instance de firefox.

Mon script :

#!/bin/bash

# window est l'ID de la fenêtre
window="$(wmctrl -l | grep -i "firefox" | cut -f1 -d" ")"

# Capture de l'image
   import -window "$window" screenshot.png

Et j'obtiens l'erreur :

import: unable to read X window image `0x05600003': Ressource
temporairement non disponible @ error/xwindow.c/XImportImage/5000.
import: missing an image filename `screenshot.png' @
error/import.c/ImportImageCommand/1293.

Où est mon erreur ?

Merci
pierre estrem

Bonjour Pierre,


Pourrais-tu simplement essayer de corriger ton script du fait que tu as
2 occurrences qui se marchent dessus et je suis en train de déverminer ton
script  ....


En premier je fais un essai pour trouver firefox :

wmctrl -l |grep -i -w  "firefox"

j'obtiens un premier résultat convenable :

0x0480002c  4 antigen 16 exemples de commandes grep pour vous aider dans le monde réel - Mozilla Firefox

je continue de vérifier ton script :

wmctrl -l |grep -i -w  "firefox" | cut -f1


j'obtiens :

0x0480002c  4 antigen Zimbra: Répondre - Mozilla Firefox

Je reprends ton script à la base en évitant les erreurs :

wmctrl -l |grep -i -w  "firefox" |awk '{print $1}' |tail -1


et le résultat donne le PID de Firefox :
0x0480002c


Pourrais-tu essayer la commande ?

Ensuite, je t'invite à relire le fil de discussion concernant
tesseract et les documents PDF images qui doivent impérativement
être convertis au format Tiff et non au format png ...

window="$(wmctrl -l |grep -i -w  "firefox" |awk '{print $1}' |tail -1)"
import -window "$window" screenshot.png


en tout cas maintenant, c'est opérationnel pour obtenir une image png
maintenant, il te faudra convertir l'image png au format tiff :

convert screenshot.png screenshot.tiff


pour ma part je n'aime pas du tout cette façon de faire du fait qu'il me manque
un point qui peux devenir gênant en en donnant pas un "timestamp" de la capture
dans le nom du fichier

correction :
import -window "$window" screenshot-$(date +%Y-%m-%d-%H-%M).png
convert screenshot*.png  screenshot*.tiff


après il te suffira de passer à la moulinette via tesseract

Merci pour ton aimable attention

Bien à toi

Bernard



Reply to: