Class EncodeOCRParser

java.lang.Object
org.apache.tika.parser.AbstractExternalProcessParser
org.apache.tika.parser.ocrencode.EncodeOCRParser
All Implemented Interfaces:
Serializable, Initializable, SelfConfiguring, Parser

public class EncodeOCRParser extends AbstractExternalProcessParser implements Initializable
Parser that base64-encodes image content instead of performing OCR text extraction. This is useful when you need to preserve the original image data in the parsed output for downstream processing by an external service.

To configure this parser, pass an EncodeOCRConfig object through the ParseContext, or configure it via tika-config.xml/json.

See Also:
  • Constructor Details

    • EncodeOCRParser

      public EncodeOCRParser()
    • EncodeOCRParser

      public EncodeOCRParser(EncodeOCRConfig config)
    • EncodeOCRParser

      public EncodeOCRParser(JsonConfig jsonConfig)
      Constructor for JSON configuration. Requires Jackson on the classpath.
      Parameters:
      jsonConfig - JSON configuration
  • Method Details

    • initialize

      public void initialize() throws TikaConfigException
      Description copied from interface: Initializable
      Called after all properties have been set to allow for validation and initialization that depends on multiple properties.
      Specified by:
      initialize in interface Initializable
      Throws:
      TikaConfigException - if there is a problem with the configuration
    • checkInitialization

      public void checkInitialization() throws TikaConfigException
      Throws:
      TikaConfigException
    • getSupportedTypes

      public Set<MediaType> getSupportedTypes(ParseContext context)
      Description copied from interface: Parser
      Returns the set of media types supported by this parser when used with the given parse context.
      Specified by:
      getSupportedTypes in interface Parser
      Parameters:
      context - parse context
      Returns:
      immutable set of media types
    • parse

      public void parse(TikaInputStream tis, ContentHandler handler, Metadata metadata, ParseContext parseContext) throws IOException, SAXException, TikaException
      Description copied from interface: Parser
      Parses a document stream into a sequence of XHTML SAX events. Fills in related document metadata in the given metadata object.

      The given document stream is consumed but not closed by this method. The responsibility to close the stream remains on the caller.

      Information about the parsing context can be passed in the context parameter. See the parser implementations for the kinds of context information they expect.

      Specified by:
      parse in interface Parser
      handler - handler for the XHTML SAX events (output)
      metadata - document metadata (input and output)
      parseContext - parse context
      Throws:
      IOException - if the document stream could not be read
      SAXException - if the SAX events could not be processed
      TikaException - if the document could not be parsed
    • getDefaultConfig

      public EncodeOCRConfig getDefaultConfig()