PDF ist ein beliebtes Format zum Teilen von Informationen über das Internet. Meistens enthalten PDF Dateien Bilder zusammen mit Text und anderen Elementen. Es kann Szenarien geben, in denen Sie diese Bilder aus PDF Dateien extrahieren müssen, um sie weiter zu verarbeiten. Zu diesem Zweck lernen Sie in diesem Artikel, wie Sie mit C++ Bilder aus PDF Dateien extrahieren.

C++-API zum Extrahieren von Bildern aus PDF Dateien

Aspose.PDF for C++ ist eine C++ Bibliothek, mit der Sie PDF Dokumente erstellen, lesen und ändern können. Darüber hinaus unterstützt die API das Extrahieren von Bildern aus PDF Dateien. Sie können die API entweder über NuGet installieren oder direkt aus dem Abschnitt downloads herunterladen.

PM> Install-Package Aspose.PDF.Cpp

Extrahieren Sie Bilder aus PDF Dateien mit C++

Im Folgenden finden Sie die Schritte zum Extrahieren von Bildern aus einer PDF Datei.

  • Laden Sie das PDF Dokument mit der Klasse Document.
  • Rufen Sie die Seiten des Dokuments mit der methode Document->getPages() ab und durchlaufen Sie sie.
  • Holen Sie sich Bilder für jede Seite mit der methode page->getResources()->getImages() und durchlaufen Sie sie.
  • Erstellen Sie für jedes Bild ein FileStream objekt und speichern Sie es als JPEG, PNG usw.

Der folgende Beispielcode demonstriert das Extrahieren von Bildern aus einer PDF Datei mit C++.

// Laden Sie das PDF Dokument
auto pdfDocument = MakeObject<Document>(u"SourceDirectory\\PDF\\SampleImages2.pdf");

// Initialisieren Sie den Bildzähler
int imageCounter = 1;

// Durchlaufen Sie die Seiten des Dokuments
for (auto page : pdfDocument->get_Pages())
{
	// Iterieren Sie durch die Bilder der Seite
	for (auto image : page->get_Resources()->get_Images())
	{
		// Erstellen Sie eine Instanz des FileStream
		System::SharedPtr<System::IO::FileStream> outputImage = System::IO::File::Create(String::Format(u"OutputDirectory\\Image{0}.jpg", imageCounter));

		// Speichern Sie das Bild
		image->Save(outputImage, System::Drawing::Imaging::ImageFormat::get_Jpeg());

		// Schließen Sie den FileStream
		outputImage->Close();

		// Erhöhen Sie den Bildzähler
		imageCounter++;
	}
}

Holen Sie sich eine kostenlose Lizenz

Sie können die API ohne Evaluierungseinschränkungen testen, indem Sie eine kostenlose temporäre Lizenz anfordern.

Fazit

In diesem Artikel haben Sie gelernt, wie Sie mit C++ Bilder aus PDF Dateien extrahieren. Um dies zu erreichen, haben wir die robuste und einfach zu verwendende Aspose.PDF for C++ API verwendet. Die API bietet eine Reihe zusätzlicher Funktionen für die Arbeit mit PDF Dateien, die Sie im Detail erkunden können, indem Sie die offizielle Dokumentation besuchen. Wenn Sie Fragen zu einem Aspekt der API haben, können Sie uns gerne in unserem kostenlosen Support-Forum erreichen.

Siehe auch