eBooks de vários formatos são muito comuns no uso diário. O eBook pode conter texto, bem como imagens. Se você quiser usar as imagens de qualquer eBook em outro lugar, poderá obtê-las facilmente extraídas programaticamente em seu aplicativo Java. Neste artigo, você aprenderá a automatizar como extrair imagens de eBook arquivos como EPUB, PDF, FB2, CHM em Java.

Os seguintes tópicos serão abordados a seguir:

API Java para extrair imagens de eBooks

GroupDocs.Parser for Java API é uma API de automação rica em recursos para extrair imagens de eBooks e documentos em Java. Além disso, a API suporta análise e extração de imagens, texto e metadados de documentos de processamento de texto, planilhas, PDF, apresentações, e-mails, arquivos ZIP e muitos outros formatos de documentos suportados.

Baixe e configure

Obtenha o arquivo JAR da seção downloads ou apenas adicione a seguinte configuração pom.xml em seus aplicativos Java baseados em Maven para experimentar os exemplos mencionados abaixo. Para obter detalhes, você pode visitar a Referência da API.

<repository>
	<id>GroupDocsJavaAPI</id>
	<name>GroupDocs Java API</name>
	<url>http://repository.groupdocs.com/repo/</url>
</repository>
<dependency>
	<groupId>com.groupdocs</groupId>
	<artifactId>groupdocs-parser</artifactId>
	<version>21.2</version> 
</dependency>

Extraia imagens do eBook EPUB em Java

Vamos começar com o eBook EPUB para analisá-lo para imagens. As etapas a seguir analisam o eBook EPUB e extraem todas as imagens dele usando o código Java.

  • Criar objeto de classe Parser com o eBook.
  • Use o método getImages para extrair todas as imagens do eBook EPUB.
  • Percorra as imagens extraídas e salve-as em disco.
e-book EPUB com imagens

eBook EPUB da Adobe [Exemplo de biblioteca de eBooks][11]

O código Java a seguir analisa o eBook EPUB e salva as imagens do eBook uma a uma no disco.

// Analise eBooks para extrair imagens de arquivos PDF, EPUB, FB2, CHM em Java e salve em disco.
Parser parser = new Parser("ebook.epub");
// Extraia imagens do eBook e salve no formato JPEG.
Iterable<PageImageArea> images = parser.getImages();
ImageOptions options = new ImageOptions(ImageFormat.Jpeg);
int imageNumber = 0;
// Iterar sobre imagens extraídas
for (PageImageArea image : images) {
    image.save(Constants.getOutputFilePath(String.format("%d.jpeg", imageNumber)), options);
    imageNumber++;
}
Imagem extraída do eBook EPUB

Como resultado, todas as imagens serão salvas no local fornecido. Aqui está uma das imagens mostradas como exemplo.

As imagens podem ser salvas em qualquer um dos seguintes formatos de arquivo de imagem:

  • JPG
  • PNG
  • WEBP *GIF
  • BMP

Extraia imagens de eBooks PDF, FB2, CHM em Java

Além do formato EPUB, se você tiver seu eBook em PDF, FB2, CHM, ou com algum outro formato, poderá extrair as imagens da mesma forma. Basta passar seu eBook para o construtor Parser enquanto cria o objeto. Depois disso, o método getImages extrairá imagens de seus eBooks fornecidos usando o mesmo código Java.

// Provide different eBook formats to the Parser constructor to extract the images.
// Parser parser = new Parser("ebook.epub");
Parser parser = new Parser("ebook.pdf");
// Parser parser = new Parser("ebook.fb2");
// Parser parser = new Parser("ebook.chm");

Iterable<PageImageArea> images = parser.getImages();

Conclusão

Neste artigo, você aprendeu a obter programaticamente todas as imagens de eBooks PDF, EPUB, FB2, CHM em seus aplicativos Java. Agora você pode tentar construir seu próprio aplicativo Java extrator de imagens usando a API GroupDocs.Parser for Java.

Para saber mais sobre a API, você pode visitar documentação ou exemplos de código aberto em GitHub. Para quaisquer outros problemas, você pode entrar em contato com o suporte rápido no fórum.

Veja também