User Tools

Site Tools


greenshot

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

greenshot [2013/10/16 17:42] (current)
ginko created
Line 1: Line 1:
 +====== Greenshot ======
 +Greenshot est un outil fantastique.
  
 +Les dernières version permettent de faire passer la sélection à l'​écran dans un OCR et de récupérer le résultat dans le clipboard. Cependant, le seul OCR supporté est "​MODI"​ (//​Micorsoft Office Document Imaging//). MODI (sic) était fourni avec Office 2003 et Office 2007. Ce n'est plus le cas avec la mouture 2010 ([[http://​support.microsoft.com/​kb/​982760]]).
 +
 +Dans ce cas, greenshot n'est plus capable de reconnaitre directement le texte. [[http://​sourceforge.net/​p/​greenshot/​bugs/​1001/​|Les dévs ne comptent pas implémenter le support d'un autre OCR pour l'​instant]]. Il faut donc ruser en passant par exemple par [[http://​code.google.com/​p/​tesseract-ocr/​|tesseract]].
 +
 +===== Installer tesseract =====
 +Sur une session sans droits admin, télécharger la version portable. Dézipper l'​archive. Puis télécharger l'​archive de dépendance. Reporter les quelques fichiers dépendance dans les répertoires correspondants de votre installation de tesseract.
 +
 +Il faut également télécharger des packages de langues pour avoir autre chose que de l'​anglais. Les décompresser dans le répertoire tesserdata.
 +
 +===== Configurer Greenshot =====
 +Il faut ensuite créer un script batch qui récupèrera l'​image et la donnera à manger à tesseract [[http://​sourceforge.net/​p/​greenshot/​feature-requests/​517/?​page=0|script inspiré de cette issue]] :
 +<code batch>​@ECHO OFF
 +REM OCR 20121128
 +REM batch resize images 20121014
 +IF (%1)==() GOTO HELP
 +SET LANG=%~2
 +IF (%2)==() SET LANG=fra
 +
 +SET TMPFILE=%TMP%\ocr.tiff
 +
 +setlocal EnableDelayedExpansion
 +@ECHO OCRing %~1 (%LANG%) ^=^=^> ocr.txt
 +@C:​\Donnees_Locales\Tools\ImageMagick-6.8.7-0\convert -resize "​400%%"​ -type Grayscale +compress "​%~1"​ %TMPFILE%
 +@C:​\Donnees_Locales\Tools\Tesseract-OCR\tesseract %TMPFILE% %TMP%\ocr -l %LANG%
 +@"​C:​\Program Files (x86)\Notepad++\notepad++.exe"​ %TMP%\ocr.txt
 +GOTO EOF
 +
 +:HELP
 +@ECHO:
 +@ECHO OCR image
 +@ECHO:
 +@ECHO Usage^: ocr x.jpg [fra^|eng]
 +@ECHO: default fra
 +@ECHO:
 +
 +:​EOF</​code>​
 +
 +NB : tesseract est un peu difficile et il convient de filtrer un peu l'​image en la grossissant 4x et en enlevant les couleurs.
 +
 +J'ai voulu répliquer le comportement de greenshot avec MODI en envoyant le contenu ainsi récupéré dans le clipboard, cependant ça ne marche pas sur du texte français avec des accents : [[http://​www.freelists.org/​post/​apt4ssx8/​an-annoying-habit-of-tesseract,​1|tesseract semble mélanger les encodages dans le fichier en sortie]]. Or, CMD.exe et du coup clip.exe n'​aiment pas trop ce mélange et foutent en l'air l'​encodage des caractères non ascii (j'ai essayé 10 000 [[http://​jpsoft.com/​forums/​threads/​copy-to-clip-changes-character.3789/​|astuces]] avec ''​type''​ ou même un programme externe pour charger le clipboard, ça ne change rien).
 +
 +Du coup le plus simple c'est d'​ouvrir le fichier avec Notepad++ : le fichier est décodé en "ANSI as UTF-8" (le décodeur pour la bouillabaisse de tesseract :). Ensuite le copier/​collé depuis Notepad++ marche bien.
greenshot.txt · Last modified: 2013/10/16 17:42 by ginko