一般にeBookとして知られている電子書籍は、さまざまな電子機器で読み取ることができるデジタル形式の書籍です。これらのデバイスには、Kindleなどの専用電子書籍リーダー、またはラップトップ、デスクトップコンピューター、スマートフォンが含まれます。市場で使用されている電子書籍には、次のような多くの一般的なファイル形式があります。 ** EPUB 、FictionBook ** FB2 、MicrosoftCompiledHTMLヘルプ-CHM DjVu MOBI PDF 、その他多数。プログラマーとして、この記事は、.NETアプリケーション内のプログラムでC#の電子書籍から画像を抽出するのに役立ちます。

以下のトピックについて以下で説明します。

電子書籍からの画像抽出のための.NETAPI

電子書籍からの画像の抽出には、この記事のC#の例でGroupDocs.Parser for .NETAPIを使用します。このAPIは、eBookに加えて、ワープロドキュメント、スプレッドシート、PDF、プレゼンテーション、電子メール、ZIPアーカイブ、およびその他の多くのドキュメント形式からの画像の解析と抽出をサポートしています。

DLLまたはMSIインストーラーはダウンロードセクションからダウンロードするか、NuGetを介して.NETアプリケーションにAPIをインストールできます。

PM> Install-Package GroupDocs.Parser

C#でEPUBeBookから画像を抽出する

EPUB eBookから始めて、画像を解析してみましょう。次の手順に続いてC#コードが、EPUB eBookを解析し、その中のすべての画像を抽出します。

  • Parserクラスオブジェクトを作成します。
  • GetImagesメソッドを使用して、EPUBeBookのすべての画像を抽出します。
  • 抽出した画像を1つずつ保存するためにトラバースします。
アリスEPUB

AdobeのEPUBeBook[サンプルeBookライブラリ][12]

次のC#コードは、上記の解析手順を実装して、上記のEPUB eBookに解析し、抽出画像を1つずつディスクに保存します。

// 電子書籍を解析してEPUB、FB2、CHMファイルから画像を抽出し、C#でディスクに保存します
using (Parser parser = new Parser("ebook.epub"))
{
    // 電子書籍から画像を抽出する
    IEnumerable<PageImageArea> images = parser.GetImages();
    ImageOptions options = new ImageOptions(ImageFormat.Jpeg);
    int imageNumber = 0;
    // 抽出された画像を反復処理します
    foreach (PageImageArea image in images)
    {
        image.Save(("Image-" + imageNumber.ToString() + image.FileType.Extension), options);
        imageNumber++;
    }
}
C#でEPUBから画像を抽出する

その結果、利用可能なすべての画像が保存されます。これがサンプルとして示されている画像の1つです。

抽出した画像は、サポートされている次の画像ファイル形式のいずれかで保存できます。

  • JPG
  • PNG
  • WEBP
  • GIF
  • BMP

C#でFB2、CHMeBooksから画像を抽出する

FB2、CHM、またはその他の形式の電子書籍をお持ちの場合は、同じ方法で画像を抽出できます。オブジェクトの作成中に、eBookをParserコンストラクターに渡す必要があります。次に、** GetImages **メソッドは、同じC#コードを使用して、提供されている電子書籍のいずれかから画像を抽出します。

// Pass the FB2, CHM, PDF, or any other eBook to Parser contructor
Parser parser = new Parser("ebook.fb2"); // FB2
// Parser parser = new Parser("ebook.chm"); // CHM
// Parser parser = new Parser("ebook.pdf"); // PDF
IEnumerable<PageImageArea> images = parser.GetImages();

結論

これで、EPUB、FB2、CHM、および.NETアプリケーション内の他のファイル形式を使用してeBookからすべての画像をプログラムで取得できるようになります。 GroupDocs.Parser for .NET APIを使用して、独自の画像抽出アプリケーションを構築することもできます。

APIの詳細については、ドキュメントまたはGitHubのオープンソースの例をご覧ください。その他の問題については、フォーラムのクイックサポートにお問い合わせください。

関連項目