2016-09-05 1 views
0

Est-il possible d'obtenir la taille de la police d'une image en utilisant pyocr ou Tesseract? Voici mon code.obtenir Taille de la police en Python avec Tesseract et Pyocr

tools = pyocr.get_available_tools() 
tool = tools[0] 
txt = tool.image_to_string(
     Imagee.open(io.BytesIO(req_image)), 
     lang=lang, 
     builder=pyocr.builders.TextBuilder() 
) 

Ici j'obtenir le texte de l'image en utilisant la fonction image_to_string. Et maintenant, ma question est, si je peux obtenir font-size (nombre) aussi de mon texte.

+0

Essayez de modifier votre exemple de code pour être [mcve]. – boardrider

Répondre

0

En utilisant tesserocr, vous pouvez obtenir un ResultIterator après avoir appelé Recognize sur votre image, pour lequel vous pouvez appeler la méthode WordFontAttributes pour obtenir les informations dont vous avez besoin. Lisez la documentation de la méthode pour plus d'informations.

import io 
import tesserocr 
from PIL import Image 

with tesserocr.PyTessBaseAPI() as api: 
    image = Image.open(io.BytesIO(req_image)) 
    api.SetImage(image) 
    api.Recognize() # required to get result from the next line 
    iterator = api.GetIterator() 
    print iterator.WordFontAttributes() 

Exemple de sortie:

{'bold': False, 
'font_id': 283, 
'font_name': u'Times_New_Roman', 
'italic': False, 
'monospace': False, 
'pointsize': 9, 
'serif': True, 
'smallcaps': False, 
'underlined': False}