Pengeditan Metadata EPUB menggunakan C# .NET

File EPUB adalah format ebook digital yang berisi teks, gambar, dan elemen multimedia, diformat menggunakan teknologi web standar seperti HTML dan CSS. Metadata EPUB mengacu pada informasi penting yang tertanam dalam file EPUB, termasuk detail seperti judul, penulis, penerbit, dan bahasa, memungkinkan pembuatan katalog dan pengorganisasian eBook digital secara akurat. Dalam artikel ini, kita akan membahas cara membaca, mengedit, dan memperbarui nilai metadata EPUB secara terprogram termasuk kumpulan item Dublin Core menggunakan C#.

Berikut adalah tautan cepat ke topik yang dibahas:

.NET API untuk Pengeditan Metadata

GroupDocs.Metadata menyediakan .NET API untuk mengotomatisasi manajemen metadata dari berbagai format file dalam aplikasi .NET. API memungkinkan untuk membaca, memperbarui, menambah, membersihkan, dan menghapus metadata untuk banyak format file. Hari ini, kami akan menggunakan API ini untuk menangani metadata eBook berformat EPUB.

Anda dapat mengunduh DLL atau penginstal MSI dari bagian unduhan atau menginstal API di aplikasi .NET Anda melalui NuGet.

PM> Install-Package GroupDocs.Metadata

Memodifikasi Metadata EPUB dengan C#

Jika Anda ingin mengubah properti metadata EPUB sebagai pengembang .NET, berikut cara melakukannya:

  • Muat eBuku EPUB menggunakan kelas Metadata.
  • Ekstrak paket root metadata menggunakan metode GetRootPackage.
  • Sekarang Anda dapat dengan mudah mengambil untuk melihat semua properti metadata paket EPUB.
  • Perbarui nilai properti sesuai kebutuhan.
  • Simpan file eBuku dengan nilai metadata yang diperbarui menggunakan metode Simpan.

Berikut adalah potongan singkat kode C# yang menunjukkan langkah-langkah di atas untuk membaca dan memperbarui properti metadata EPUB:

Baca Metadata EPUB

// Baca metadata EPUB menggunakan C#
using (Metadata metadata = new Metadata("path/ebook.epub"))
{
    var root = metadata.GetRootPackage<EpubRootPackage>();

    Console.WriteLine(root.EpubPackage.Version);
    Console.WriteLine(root.EpubPackage.UniqueIdentifier);
    Console.WriteLine(root.EpubPackage.ImageCover != null ? root.EpubPackage.ImageCover.Length : 0);
    Console.WriteLine(root.EpubPackage.Description);
    Console.WriteLine(root.EpubPackage.Title);
}

Perbarui Metadata EPUB

Kode sumber C# berikut mengambil dan memperbarui properti metadata EPUB dari file EPUB.

// Perbarui metadata EPUB menggunakan C#
using (Metadata metadata = new Metadata("path/ebook.epub"))
{
    var root = metadata.GetRootPackage<EpubRootPackage>();

    root.EpubPackage.Creator = "GroupDocs";
    root.EpubPackage.Description = "metadata updated e-book";
    root.EpubPackage.Format = "EPUB";
    root.EpubPackage.Date = DateTime.Now.ToString();
 
    metadata.Save("path/ebook.epub");
}

Memodifikasi Metadata Inti EPUB Dublin dengan C#

Metadata Dublin Core adalah sekumpulan beberapa item yang menggambarkan sumber daya fisik dan digital. Anda dapat dengan mudah mengubah properti metadata Dublin Core menggunakan kode C# yang sangat mirip.

Baca Dublin Inti

Beberapa baris berikut mengekstrak item metadata Dublin Core untuk dianalisis:

// Baca metadata Dublin Core menggunakan C#
using (Metadata metadata = new Metadata("path/ebook.epub"))
{
    var root = metadata.GetRootPackage<EpubRootPackage>();

    Console.WriteLine(root.DublinCorePackage.Rights);
    Console.WriteLine(root.DublinCorePackage.Publisher);
    Console.WriteLine(root.DublinCorePackage.Title);
    Console.WriteLine(root.DublinCorePackage.Creator);
    Console.WriteLine(root.DublinCorePackage.Language);
    Console.WriteLine(root.DublinCorePackage.Date);
}

Perbarui Inti Dublin

Kemudian Anda dapat mengubah properti Dublin Core tertentu seperti yang ditunjukkan pada kode di bawah ini:

// Perbarui metadata Dublin Core menggunakan C#
using (Metadata metadata = new Metadata("path/ebook.epub"))
{
    var root = metadata.GetRootPackage<EpubRootPackage>();

    root.DublinCorePackage.SetProperties(p => p.Name == "dc:creator", new PropertyValue("GroupDocs"));
    root.DublinCorePackage.SetProperties(p => p.Name == "dc:description", new PropertyValue("metadata updated e-book"));
    root.DublinCorePackage.SetProperties(p => p.Name == "dc:title", new PropertyValue("Sample EPUB"));
    root.DublinCorePackage.SetProperties(p => p.Name == "dc:date", new PropertyValue(DateTime.Now.ToString()));

    metadata.Save("path/ebook.epub");
}

Mendapatkan Lisensi Gratis

Jika Anda ingin merasakan kenikmatan API ini dalam kapasitas penuhnya, Anda dapat mendapatkan lisensi sementara secara gratis.

Kesimpulan

Pada artikel ini, kami menjelajahi dunia manipulasi metadata EPUB. Pertama, kita menjelajahi cara membaca dan mengedit properti metadata EPUB secara terprogram menggunakan C#. Kemudian kami melakukan hal yang sama untuk kumpulan item Dublin Core untuk eBook.

Untuk informasi API terperinci, pembaca dianjurkan untuk membaca referensi API, repositori GitHub & dokumentasi.

Pertanyaan dan diskusi lebih lanjut dapat diarahkan ke forum yang telah disediakan.

Lihat juga