ポータブルドキュメントフォーマット(PDF) は、アドビによって開発された、広く使用されている人気のあるドキュメントフォーマットです。 PDFドキュメントには、フォーマットされたテキスト、画像、注釈、フォームフィールドなど、さまざまなコンテンツを含めることができます。プログラムによるPDFドキュメントの解析は一般的な使用例であり、テキストを抽出する方法は複数あります。ただし、PDFドキュメントから画像を抽出することは複雑な作業です。この記事では、[GroupDocs.Parser for .NET](https://products.groupdocs。 com / parser) API。それでは始めましょう。

PDFドキュメントから画像を抽出する手順

**1。**新しいプロジェクトを作成します。

2\。GroupDocs.Parserfor .NET をダウンロードするか、NuGet を使用してインストールします/GroupDocs.Parser) 。

**3。**次の名前空間を追加します。

using GroupDocs.Parser;
using GroupDocs.Parser.Data;
using System.Drawing;
using System.Drawing.Imaging;

** 4.**PDFドキュメントをロードします。

// パーサークラスのインスタンスを作成します
using (Parser parser = new Parser("sample.pdf"))
{
  // コードはここにあります。
}

**5。**ドキュメントから画像を抽出します。

// 画像を抽出する
IEnumerable<PageImageArea> images = parser.GetImages();
// 画像抽出がサポートされているかどうかを確認します
if (images == null)
{
  Console.WriteLine("Images extraction isn't supported");
  return;
}

**6。**コレクションの各画像にアクセスして保存します。

// 画像を繰り返し処理する
foreach (PageImageArea image in images)
{
  // 画像を保存する
  Image.FromStream(image.GetImageStream()).Save(string.Format("{0}.Jpeg", counter++), ImageFormat.Jpeg);                    
}

完全なコード

// パーサークラスのインスタンスを作成します
using (Parser parser = new Parser("C:\\candy.pdf"))
{
	// 画像を抽出する
	IEnumerable<PageImageArea> images = parser.GetImages();
	// 画像抽出がサポートされているかどうかを確認します
	if (images == null)
	{
		Console.WriteLine("Images extraction isn't supported");
		return;
	}
	
	int counter = 1;
	// 画像を繰り返し処理する
	foreach (PageImageArea image in images)
	{
		// 各画像を保存する
		Image.FromStream(image.GetImageStream()).Save(string.Format("{0}.Jpeg", counter++), ImageFormat.Jpeg);                    
	}
}

結果

PDFドキュメント

画像を抽出するためのPDFドキュメント。

抽出された画像

PDFから抽出された画像。

GroupDocs.Parser for .NET APIが提供する機能の完全なリストについては、ドキュメント にアクセスしてください。乾杯!