Meu pdf contém imagens digitalizadas e desejo extrair texto dele.
O que tentei: tentei com o AutoDetectParsers, mas sem saída.
Eu segui a solução fornecida em Apache Tika extrai arquivos PDF digitalizados e também Apache Tika Jira em https://issues.apache.org/jira/browse/TIKA-1729 mas obtendo uma string vazia sem nenhum erro.
Minha configuração: Win 7 SO de 64 bits, JDK 1.8.0_45.
Qualquer tipo de ajuda é bem vinda.
Respostas:
6 para resposta № 1Passos a seguir para resolver isso:
Instale o Tesseract no seu sistema usando "tesseract-ocr-setup-3.05.00dev.exe" para Windows a partir de: https://sourceforge.net/projects/tesseract-ocr-alt/files/ e defina sua localização na sua configuração.
Código Java:
Parser parser = new AutoDetectParser(); BodyContentHandler handler = new BodyContentHandler(Integer.MAX_VALUE); TesseractOCRConfig config = new TesseractOCRConfig(); config.setTesseractPath(tPath); PDFParserConfig pdfConfig = new PDFParserConfig(); pdfConfig.setExtractInlineImages(true); pdfConfig.setExtractUniqueInlineImagesOnly(false); // set to false if pdf contains multiple images. ParseContext parseContext = new ParseContext(); parseContext.set(TesseractOCRConfig.class, config); parseContext.set(PDFParserConfig.class, pdfConfig); //need to add this to make sure recursive parsing happens! parseContext.set(Parser.class, parser);
Dependências do Maven:
<dependencies>
<dependency>
<groupId>org.apache.tika</groupId>
<artifactId>tika-parsers</artifactId>
<version>1.13</version>
</dependency>
<dependency>
<groupId>com.levigo.jbig2</groupId>
<artifactId>levigo-jbig2-imageio</artifactId>
<version>1.6.5</version>
</dependency>
<dependency>
<groupId>com.github.jai-imageio</groupId>
<artifactId>jai-imageio-core</artifactId>
<version>1.3.1</version>
</dependency>
</dependencies>
Eu acho que pode ser útil. Obrigado.