No último artigo, discutimos gerenciamento de metadados EPUB e Dublin Core usando C#. Hoje, aprenderemos como você pode ler, editar e atualizar programaticamente as propriedades de metadados do EPUB, incluindo o conjunto de propriedades Dublin Core, usando Java.
Um arquivo EPUB é um formato de livro digital que inclui texto, imagens e elementos interativos. É feito usando tecnologias comuns da web, como HTML e CSS.
Metadados EPUB significam informações importantes armazenadas em arquivos EPUB, como título, autor, editora e idioma. Esses dados auxiliam na organização adequada dos livros digitais.
Aqui estão os tópicos que abordaremos:
- API Java para edição de metadados
- Gerenciando metadados EPUB com Java
- Gerenciando metadados Dublin Core com Java
API Java para edição de metadados
GroupDocs.Metadata oferece uma Java API projetada para automatizar o gerenciamento de metadados para diferentes formatos de arquivo em aplicativos Java. Esta API permite ler, atualizar, adicionar, limpar e remover metadados de vários tipos de arquivos. Em nossa discussão de hoje, utilizaremos essa API para lidar com metadados de e-books no formato EPUB.
Você pode obter o arquivo JAR na seção de downloads ou incorporar o repositório mais recente e as configurações de dependência do Maven em seus aplicativos Java.
<repository>
<id>GroupDocsJavaAPI</id>
<name>GroupDocs Java API</name>
<url>https://releases.groupdocs.com/java/repo/</url>
</repository>
<dependency>
<groupId>com.groupdocs</groupId>
<artifactId>groupdocs-metadata</artifactId>
<version>23.10</version>
</dependency>
Modificando metadados EPUB com Java
Como desenvolvedor Java, se quiser modificar as propriedades de metadados do EPUB, siga estas etapas:
- Carregue o e-book EPUB usando a classe Metadata.
- Use o método getRootPackageGeneric para extrair o pacote raiz de metadados.
- Agora, você pode visualizar facilmente todas as propriedades de metadados do pacote EPUB usando o respectivo método getter.
- Atualize os valores das propriedades conforme necessário usando o respectivo método setter.
- Salve o arquivo do e-book com os valores de metadados atualizados usando o método save.
Abaixo estão trechos de código Java que ilustram as etapas para ler e atualizar propriedades de metadados EPUB:
Ler metadados EPUB
Para começar, veja como você pode ler os metadados do EPUB usando Java:
// Leia metadados EPUB usando Java
try (Metadata metadata = new Metadata("path/ebook.epub")) {
EpubRootPackage root = metadata.getRootPackageGeneric();
System.out.println(root.getEpubPackage().getVersion());
System.out.println(root.getEpubPackage().getUniqueIdentifier());
System.out.println(root.getEpubPackage().getImageCover() != null ? root.getEpubPackage().getImageCover().length : 0);
}
Atualizar metadados EPUB
O código-fonte Java a seguir demonstra como buscar e atualizar as propriedades de metadados EPUB do arquivo EPUB:
// Atualizar metadados EPUB usando Java
try (Metadata metadata = new Metadata("path/ebook.epub")) {
EpubRootPackage root = metadata.getRootPackageGeneric();
root.getEpubPackage().setCreator("GroupDocs");
root.getEpubPackage().setDescription("test e-book");
root.getEpubPackage().setFormat("EPUB");
root.getEpubPackage().setDate(new Date().toString());
metadata.save("path/ebook.epub");
}
Modificando metadados EPUB Dublin Core com Java
Os metadados Dublin Core consistem em alguns itens que descrevem recursos físicos e digitais. Você pode modificar as propriedades de metadados Dublin Core usando código Java de maneira semelhante aos metadados EPUB.
Leia Dublin Core
As linhas de código a seguir demonstram como extrair itens de metadados Dublin Core para análise:
// Leia metadados Dublin Core usando Java
try (Metadata metadata = new Metadata("path/ebook.epub")) {
EpubRootPackage root = metadata.getRootPackageGeneric();
System.out.println(root.getDublinCorePackage().getRights());
System.out.println(root.getDublinCorePackage().getPublisher());
System.out.println(root.getDublinCorePackage().getTitle());
System.out.println(root.getDublinCorePackage().getCreator());
System.out.println(root.getDublinCorePackage().getLanguage());
System.out.println(root.getDublinCorePackage().getDate());
}
Atualizar Dublin Core
Você pode alterar propriedades específicas do Dublin Core conforme necessário, conforme mostrado no código abaixo:
// Atualizar metadados Dublin Core usando Java
try (Metadata metadata = new Metadata("path/ebook.epub")) {
EpubRootPackage root = metadata.getRootPackageGeneric();
root.getDublinCorePackage().setProperties(new WithNameSpecification("dc:creator"), new PropertyValue("GroupDocs"));
root.getDublinCorePackage().setProperties(new WithNameSpecification("dc:description"), new PropertyValue("test e-book"));
root.getDublinCorePackage().setProperties(new WithNameSpecification("dc:title"), new PropertyValue("test EPUB"));
root.getDublinCorePackage().setProperties(new WithNameSpecification("dc:date"), new PropertyValue(new Date().toString()));
metadata.save("path/ebook.epub");
}
Obtendo uma licença gratuita
Se quiser experimentar totalmente os recursos desta API, você pode obter uma licença temporária gratuita.
Conclusão
Neste artigo, analisamos a manipulação de metadados EPUB. Inicialmente, exploramos como ler e modificar propriedades de metadados EPUB programaticamente usando Java. Posteriormente, aplicamos as mesmas técnicas ao conjunto de itens Dublin Core em e-books.
Para obter informações detalhadas sobre a API, os leitores são incentivados a consultar:
Qualquer dúvida ou discussão adicional pode ser direcionada ao fórum fornecido.