C# .NET을 사용한 EPUB 메타데이터 편집

EPUB 파일은 HTML 및 CSS와 같은 표준 웹 기술을 사용하여 형식이 지정된 텍스트, 이미지 및 멀티미디어 요소를 포함하는 디지털 전자책 형식입니다. EPUB 메타데이터는 제목, 저자, 출판사, 언어 등의 세부 정보를 포함하여 EPUB 파일에 포함된 필수 정보를 말하며 디지털 전자책의 정확한 분류 및 구성을 가능하게 합니다. 이 문서에서는 C#을 사용하여 Dublin Core 항목 집합을 포함한 EPUB 메타데이터 값을 프로그래밍 방식으로 읽고, 편집하고, 업데이트하는 방법을 설명합니다.

다음은 다루는 주제에 대한 빠른 링크입니다.

메타데이터 편집을 위한 .NET API

GroupDocs.Metadata는 .NET 애플리케이션 내에서 다양한 파일 형식의 메타데이터 관리를 자동화하는 .NET API를 제공합니다. API를 사용하면 다양한 파일 형식에 대한 메타데이터를 읽고, 업데이트하고, 추가하고, 정리하고, 제거할 수 있습니다. 오늘은 이 API를 사용해 EPUB 형식의 eBook 메타데이터를 처리해 보겠습니다.

다운로드 섹션에서 DLL 또는 MSI 설치 프로그램을 다운로드하거나 NuGet을 통해 .NET 애플리케이션에 API를 설치할 수 있습니다.

PM> Install-Package GroupDocs.Metadata

C#을 사용하여 EPUB 메타데이터 수정

.NET 개발자로서 EPUB 메타데이터 속성을 변경하려는 경우 방법은 다음과 같습니다.

  • Metadata 클래스를 사용하여 EPUB eBook을 로드합니다.
  • GetRootPackage 메서드를 사용하여 메타데이터 루트 패키지를 추출합니다.
  • 이제 EPUB 패키지의 모든 메타데이터 속성을 쉽게 가져와 볼 수 있습니다.
  • 필요에 따라 속성 값을 업데이트합니다.
  • Save 메서드를 사용하여 업데이트된 메타데이터 값으로 eBook 파일을 저장합니다.

다음은 EPUB 메타데이터 속성을 읽고 업데이트하는 위의 단계를 보여주는 짧은 C# 코드입니다.

EPUB 메타데이터 읽기

// C#을 사용하여 EPUB 메타데이터 읽기
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 메타데이터 속성을 가져오고 업데이트합니다.

// C#을 사용하여 EPUB 메타데이터 업데이트
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");
}

C#을 사용하여 EPUB 더블린 코어 메타데이터 수정

Dublin Core 메타데이터는 물리적 자원과 디지털 자원을 설명하는 몇 가지 항목의 집합입니다. 매우 유사한 C# 코드를 사용하여 Dublin Core 메타데이터 속성을 쉽게 변경할 수 있습니다.

더블린 코어 읽기

다음 몇 줄은 분석할 Dublin Core 메타데이터 항목을 추출합니다.

// C#을 사용하여 Dublin Core 메타데이터 읽기
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 속성을 적절하게 변경할 수 있습니다.

// C#을 사용하여 Dublin Core 메타데이터 업데이트
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");
}

무료 라이센스 얻기

이 API의 전체 용량을 경험하고 싶다면 무료로 임시 라이선스를 받으세요.

결론

이 기사에서 우리는 EPUB 메타데이터 조작의 세계를 탐구했습니다. 먼저 C#을 사용하여 EPUB 메타데이터 속성을 프로그래밍 방식으로 읽고 편집하는 방법을 살펴봅니다. 그런 다음 eBook용 더블린 코어 항목 세트에 대해서도 동일한 작업을 수행했습니다.

자세한 API 정보를 보려면 독자는 API 참조, GitHub 저장소 및 문서를 참조하는 것이 좋습니다.

질문과 추가 토론은 제공된 포럼으로 이동할 수 있습니다.

또한보십시오