Portable Document Format (PDF) est un format de document populaire et largement utilisé développé par Adobe. Les documents PDF peuvent contenir une variété de contenus, y compris du texte formaté, des images, des annotations, des champs de formulaire, etc. L’analyse de documents PDF par programme est un cas d’utilisation populaire et il existe plusieurs façons d’extraire le texte. Cependant, extraire des images d’un document PDF est une tâche complexe. Cet article montre avec quelle facilité vous pouvez extraire des images de documents PDF programmatiquement en C# à l’aide de [GroupDocs.Parser for .NET](https://products.groupdocs. com/analyseur) API. Alors commençons.

Étapes pour extraire des images d’un document PDF

1. Créez un nouveau projet.

2. Téléchargez GroupDocs.Parser for .NET ou installez-le à l’aide de [NuGet](https://www.nuget.org/packages /GroupDocs.Parseur).

3. Ajoutez les espaces de noms suivants.

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

4. Chargez le document PDF.

// Créer une instance de la classe Parser
using (Parser parser = new Parser("sample.pdf"))
{
  // votre code va ici.
}

5. Extraire des images du document.

// Extraire des images
IEnumerable<PageImageArea> images = parser.GetImages();
// Vérifiez si l'extraction d'images est prise en charge
if (images == null)
{
  Console.WriteLine("Images extraction isn't supported");
  return;
}

6. Accédez à chaque image de la collection et enregistrez-la.

// Itérer sur les images
foreach (PageImageArea image in images)
{
  // Enregistrer les images
  Image.FromStream(image.GetImageStream()).Save(string.Format("{0}.Jpeg", counter++), ImageFormat.Jpeg);                    
}

Code complet

// Créer une instance de la classe Parser
using (Parser parser = new Parser("C:\\candy.pdf"))
{
	// Extraire des images
	IEnumerable<PageImageArea> images = parser.GetImages();
	// Vérifiez si l'extraction d'image est prise en charge
	if (images == null)
	{
		Console.WriteLine("Images extraction isn't supported");
		return;
	}
	
	int counter = 1;
	// Itérer sur les images
	foreach (PageImageArea image in images)
	{
		// Enregistrer chaque image
		Image.FromStream(image.GetImageStream()).Save(string.Format("{0}.Jpeg", counter++), ImageFormat.Jpeg);                    
	}
}

Résultats

Document PDF

Document PDF pour extraire des images.

Images extraites

images extraites du PDF.

Pour une liste complète des fonctionnalités fournies par GroupDocs.Parser pour l’API .NET, consultez la documentation. Acclamations!