Class TesseractOCRParser

java.lang.Object
org.apache.tika.parser.AbstractExternalProcessParser
org.apache.tika.parser.ocr.TesseractOCRParser
All Implemented Interfaces:
Serializable, org.apache.tika.config.Initializable, org.apache.tika.config.SelfConfiguring, org.apache.tika.parser.Parser

public class TesseractOCRParser extends org.apache.tika.parser.AbstractExternalProcessParser implements org.apache.tika.config.Initializable
TesseractOCRParser powered by tesseract-ocr engine. To enable this parser, create a TesseractOCRConfig object and pass it through a ParseContext. Tesseract-ocr must be installed and on system path or the path to its root folder must be provided:

TesseractOCRConfig config = new TesseractOCRConfig();
//Needed if tesseract is not on system path
config.setTesseractPath(tesseractFolder);
parseContext.set(TesseractOCRConfig.class, config);

See Also:
  • Field Details

    • TESS_META

      public static final String TESS_META
      See Also:
    • IMAGE_ROTATION

      public static final org.apache.tika.metadata.Property IMAGE_ROTATION
    • IMAGE_MAGICK

      public static final org.apache.tika.metadata.Property IMAGE_MAGICK
    • PSM0_PAGE_NUMBER

      public static final org.apache.tika.metadata.Property PSM0_PAGE_NUMBER
    • PSM0_ORIENTATION

      public static final org.apache.tika.metadata.Property PSM0_ORIENTATION
    • PSM0_ROTATE

      public static final org.apache.tika.metadata.Property PSM0_ROTATE
    • PSM0_ORIENTATION_CONFIDENCE

      public static final org.apache.tika.metadata.Property PSM0_ORIENTATION_CONFIDENCE
    • PSM0_SCRIPT

      public static final org.apache.tika.metadata.Property PSM0_SCRIPT
    • PSM0_SCRIPT_CONFIDENCE

      public static final org.apache.tika.metadata.Property PSM0_SCRIPT_CONFIDENCE
  • Constructor Details

    • TesseractOCRParser

      public TesseractOCRParser() throws org.apache.tika.exception.TikaConfigException
      Throws:
      org.apache.tika.exception.TikaConfigException
    • TesseractOCRParser

      public TesseractOCRParser(TesseractOCRConfig tesseractOCRConfig) throws org.apache.tika.exception.TikaConfigException
      Throws:
      org.apache.tika.exception.TikaConfigException
    • TesseractOCRParser

      public TesseractOCRParser(org.apache.tika.config.JsonConfig jsonConfig) throws org.apache.tika.exception.TikaConfigException
      Constructor for JSON configuration. Requires Jackson on the classpath.
      Parameters:
      jsonConfig - JSON configuration
      Throws:
      org.apache.tika.exception.TikaConfigException
  • Method Details

    • getImageMagickProg

      public static String getImageMagickProg()
    • getTesseractProg

      public static String getTesseractProg()
    • getSupportedTypes

      public Set<org.apache.tika.mime.MediaType> getSupportedTypes(org.apache.tika.parser.ParseContext context)
      Specified by:
      getSupportedTypes in interface org.apache.tika.parser.Parser
    • hasTesseract

      public boolean hasTesseract() throws org.apache.tika.exception.TikaConfigException
      Throws:
      org.apache.tika.exception.TikaConfigException
    • parse

      public void parse(Image image, ContentHandler handler, org.apache.tika.metadata.Metadata metadata, org.apache.tika.parser.ParseContext context) throws IOException, SAXException, org.apache.tika.exception.TikaException
      Throws:
      IOException
      SAXException
      org.apache.tika.exception.TikaException
    • parse

      public void parse(org.apache.tika.io.TikaInputStream tis, ContentHandler handler, org.apache.tika.metadata.Metadata metadata, org.apache.tika.parser.ParseContext parseContext) throws IOException, SAXException, org.apache.tika.exception.TikaException
      Specified by:
      parse in interface org.apache.tika.parser.Parser
      Throws:
      IOException
      SAXException
      org.apache.tika.exception.TikaException
    • initialize

      public void initialize() throws org.apache.tika.exception.TikaConfigException
      Specified by:
      initialize in interface org.apache.tika.config.Initializable
      Throws:
      org.apache.tika.exception.TikaConfigException
    • checkInitialization

      public void checkInitialization() throws org.apache.tika.exception.TikaConfigException
      Throws:
      org.apache.tika.exception.TikaConfigException
    • getLangs

      public Set<String> getLangs()
    • hasWarned

      protected boolean hasWarned()
    • warn

      protected void warn()
    • setOtherTesseractSettings

      public void setOtherTesseractSettings(List<String> settings) throws org.apache.tika.exception.TikaConfigException
      Throws:
      org.apache.tika.exception.TikaConfigException
    • getOtherTesseractSettings

      public List<String> getOtherTesseractSettings()
    • getDefaultConfig

      public TesseractOCRConfig getDefaultConfig()