Modifica dei metadati EPUB utilizzando Java

Nell’ultimo articolo abbiamo discusso della gestione dei metadati EPUB e del Dublin Core utilizzando C#. Oggi impareremo come leggere, modificare e aggiornare a livello di codice le proprietà dei metadati EPUB, incluso il set di proprietà Dublin Core, utilizzando Java.

Un file EPUB è un formato di libro digitale che include testo, immagini ed elementi interattivi. È realizzato utilizzando tecnologie web comuni come HTML e CSS.

Per metadati EPUB si intendono informazioni importanti archiviate all’interno di file EPUB, come titolo, autore, editore e lingua. Questi dati aiutano a organizzare correttamente i libri digitali.

Ecco gli argomenti che tratteremo:

API Java per la modifica dei metadati

GroupDocs.Metadata offre una API Java progettata per automatizzare la gestione dei metadati per diversi formati di file nelle applicazioni Java. Questa API consente di leggere, aggiornare, aggiungere, pulire e rimuovere metadati da vari tipi di file. Nella nostra discussione di oggi, utilizzeremo questa API per gestire i metadati degli eBook nel formato EPUB.

Puoi ottenere il file JAR dalla sezione download o incorporare le ultime configurazioni di repository e dipendenze Maven nelle tue applicazioni 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>

Modifica dei metadati EPUB con Java

Come sviluppatore Java, se desideri modificare le proprietà dei metadati EPUB, procedi nel seguente modo:

  1. Carica l’eBook EPUB utilizzando la classe Metadati.
  2. Utilizzare il metodo getRootPackageGeneric per estrarre il pacchetto root dei metadati.
  3. Ora puoi visualizzare facilmente tutte le proprietà dei metadati del pacchetto EPUB utilizzando il rispettivo metodo getter.
  4. Aggiorna i valori delle proprietà secondo necessità utilizzando il rispettivo metodo setter.
  5. Salva il file eBook con i valori dei metadati aggiornati utilizzando il metodo di salvataggio.

Di seguito sono riportati frammenti di codice Java che illustrano i passaggi per leggere e aggiornare le proprietà dei metadati EPUB:

Leggi i metadati EPUB

Per cominciare, ecco come leggere i metadati EPUB utilizzando Java:

// Leggere i metadati EPUB utilizzando 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);
}

Aggiorna i metadati EPUB

Il seguente codice sorgente Java dimostra come recuperare e aggiornare le proprietà dei metadati EPUB del file EPUB:

// Aggiorna i metadati EPUB utilizzando 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");
}

Modifica dei metadati EPUB Dublin Core con Java

I metadati Dublin Core sono costituiti da alcuni elementi che descrivono risorse sia fisiche che digitali. Puoi modificare le proprietà dei metadati Dublin Core utilizzando il codice Java in modo simile ai metadati EPUB.

Leggi Dublin Core

Le seguenti righe di codice dimostrano come estrarre gli elementi di metadati Dublin Core per l’analisi:

// Leggi i metadati Dublin Core utilizzando 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());
}

Aggiorna Dublin Core

Puoi modificare specifiche proprietà Dublin Core secondo necessità, come mostrato nel codice seguente:

// Aggiorna i metadati Dublin Core utilizzando 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");
}

Ottenere una licenza gratuita

Se desideri sperimentare appieno le funzionalità di questa API, puoi ottenere una licenza temporanea gratuita.

Conclusione

In questo articolo, abbiamo esaminato la manipolazione dei metadati EPUB. Inizialmente, abbiamo esplorato come leggere e modificare le proprietà dei metadati EPUB a livello di codice utilizzando Java. Successivamente, abbiamo applicato le stesse tecniche al set di elementi Dublin Core all’interno degli eBook.

Per informazioni dettagliate sull’API, i lettori sono invitati a fare riferimento a:

Eventuali domande o ulteriori discussioni possono essere indirizzate al forum fornito.

Guarda anche