تحرير البيانات التعريفية لـ EPUB باستخدام C# .NET

ملف EPUB هو تنسيق كتاب إلكتروني رقمي يحتوي على نصوص وصور وعناصر وسائط متعددة، تم تنسيقه باستخدام تقنيات الويب القياسية مثل HTML وCSS. تشير بيانات EPUB التعريفية إلى المعلومات الأساسية المضمنة في ملفات EPUB، بما في ذلك تفاصيل مثل العنوان والمؤلف والناشر واللغة، مما يتيح فهرسة وتنظيمًا دقيقًا للكتب الإلكترونية الرقمية. سنناقش في هذه المقالة كيفية قراءة قيم بيانات تعريف EPUB وتحريرها وتحديثها برمجيًا، بما في ذلك مجموعة العناصر Dublin Core باستخدام لغة C#.

فيما يلي روابط سريعة للمواضيع التي تمت تغطيتها:

.NET API لتحرير البيانات التعريفية

يوفر GroupDocs.Metadata .NET API لأتمتة إدارة بيانات التعريف لتنسيقات الملفات المختلفة ضمن تطبيقات .NET. تتيح واجهة برمجة التطبيقات (API) قراءة البيانات الوصفية للعديد من تنسيقات الملفات وتحديثها وإضافتها وتنظيفها وإزالتها. اليوم، سنستخدم واجهة برمجة التطبيقات هذه للتعامل مع البيانات الوصفية للكتب الإلكترونية ذات تنسيق EPUB.

يمكنك تنزيل ملفات DLL أو مثبت MSI من قسم التنزيلات أو تثبيت واجهة برمجة التطبيقات (API) في تطبيق .NET الخاص بك عبر NuGet.

PM> Install-Package GroupDocs.Metadata

تعديل البيانات التعريفية لـ EPUB باستخدام C#

إذا كنت تريد تغيير خصائص بيانات EPUB التعريفية كمطور .NET، فإليك كيفية القيام بذلك:

  • قم بتحميل الكتاب الإلكتروني EPUB باستخدام فئة Metadata.
  • قم باستخراج حزمة جذر بيانات التعريف باستخدام طريقة GetRootPackage.
  • يمكنك الآن الجلب بسهولة لعرض جميع خصائص البيانات التعريفية لحزمة EPUB.
  • قم بتحديث قيم الخاصية كما هو مطلوب.
  • احفظ ملف الكتاب الإلكتروني بقيم البيانات التعريفية المحدثة باستخدام طريقة الحفظ.

فيما يلي الأجزاء القصيرة من كود C# التي توضح الخطوات المذكورة أعلاه لقراءة وتحديث خصائص البيانات التعريفية لـ EPUB:

قراءة البيانات التعريفية لـ EPUB

// قراءة البيانات التعريفية لـ EPUB باستخدام 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);
}

تحديث البيانات التعريفية لـ EPUB

يقوم كود مصدر C# التالي بجلب وتحديث خصائص بيانات EPUB التعريفية لملف EPUB.

// تحديث البيانات التعريفية لـ EPUB باستخدام 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");
}

تعديل البيانات الوصفية الأساسية لـ EPUB Dublin باستخدام C#

البيانات الوصفية Dublin Core عبارة عن مجموعة من العناصر التي تصف الموارد المادية والرقمية. يمكنك بسهولة تغيير خصائص البيانات التعريفية لـ Dublin Core باستخدام رمز C# مشابه جدًا.

قراءة دبلن كور

تقوم الأسطر القليلة التالية باستخراج عناصر بيانات تعريف Dublin Core لتحليلها:

// قراءة بيانات تعريف Dublin Core باستخدام 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);
}

تحديث دبلن كور

ثم يمكنك تغيير خصائص Dublin Core المحددة وفقًا لذلك كما هو موضح في الكود أدناه:

// تحديث البيانات التعريفية لـ Dublin Core باستخدام 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");
}

الحصول على ترخيص مجاني

إذا كنت ترغب في تجربة متعة واجهة برمجة التطبيقات هذه بكامل طاقتها، فيمكنك الحصول على ترخيص مؤقت مجانًا.

خاتمة

في هذه المقالة، استكشفنا عالم معالجة البيانات الوصفية لـ EPUB. أولاً، نستكشف كيفية قراءة خصائص البيانات التعريفية لـ EPUB وتحريرها برمجيًا باستخدام لغة C#. ثم فعلنا الشيء نفسه بالنسبة لمجموعة عناصر Dublin Core الخاصة بالكتب الإلكترونية.

للحصول على معلومات تفصيلية عن واجهة برمجة التطبيقات، ننصح القراء بمراجعة مرجع واجهة برمجة التطبيقات ومستودع GitHub والوثائق.

يمكن توجيه الأسئلة والمناقشات الإضافية إلى المنتدى المتوفر.

أنظر أيضا