Mit Bildern in PDF C# arbeiten

Ein Bild sagt mehr als tausend Worte. Daher spielen Bilder und Grafiken in PDF sowie anderen Dokumenten eine wichtige Rolle. Da PDF zu einem der beliebtesten und am weitesten verbreiteten Dateiformate geworden ist, befasst sich dieser Artikel mit der programmgesteuerten Bearbeitung von Bildern in PDF Dateien. Genauer gesagt lernen Sie, wie Sie Bilder aus PDF Dateien in C# .NET hinzufügen, extrahieren, entfernen und ersetzen.

C# API zum Hinzufügen, Entfernen und Ersetzen von Bildern in PDF Dateien – kostenloser Download

Aspose.PDF for .NET ist eine C# Klassenbibliothek, mit der Sie PDF Dokumente aus .NET Anwendungen heraus erstellen und bearbeiten können. Mit der API können Sie ganz einfach sowohl grundlegende als auch erweiterte PDF-Automatisierungsfunktionen ausführen. Außerdem können Sie Bilder in bestehenden PDF Dateien manipulieren. Die API kann als DLL heruntergeladen oder über NuGet installiert werden.

PM> Install-Package Aspose.Pdf

Bild in einer PDF Datei in C# .NET hinzufügen

Im Folgenden finden Sie die Schritte zum Hinzufügen eines Bildes zu einer PDF Datei mit Aspose.PDF for .NET.

  • Verwenden Sie die Klasse Document, um eine neue PDF Datei zu erstellen oder eine vorhandene PDF Datei zu laden.
  • Rufen Sie die Referenz der gewünschten Seite im Objekt Seite ab.
  • Fügen Sie das Bild zur Sammlung Ressourcen der Seite hinzu.
  • Verwenden Sie die folgenden Operatoren, um das Bild auf der Seite zu platzieren:
    • GSpeichern operator to save the current graphical state.
    • Matrix verketten operator to specify where the image is to be placed.
    • Tun operator to draw the image on the page.
    • GWiederherstellen operator to save the updated graphical state.
  • Speichern Sie die aktualisierte PDF Datei mit der methode Document.Save(String).

Das folgende Codebeispiel zeigt, wie Sie mit C# ein Bild zu einer PDF Datei hinzufügen.

// Vollständige Beispiele und Datendateien finden Sie unter https://github.com/aspose-pdf/Aspose.PDF-for-.NET
// Dokument öffnen
Document pdfDocument = new Document("AddImage.pdf");

// Koordinaten festlegen
int lowerLeftX = 100;
int lowerLeftY = 100;
int upperRightX = 200;
int upperRightY = 200;

// Holen Sie sich die Seite, auf der das Bild hinzugefügt werden muss
Page page = pdfDocument.Pages[1];

// Bild in Stream laden
FileStream imageStream = new FileStream("aspose-logo.jpg", FileMode.Open);

// Fügen Sie ein Bild zur Bildersammlung von Seitenressourcen hinzu
page.Resources.Images.Add(imageStream);

// Verwenden des GSave-Operators: Dieser Operator speichert den aktuellen Grafikstatus
page.Contents.Add(new Aspose.Pdf.Operators.GSave());

// Erstellen Sie Rechteck und Matrixobjekte
Aspose.Pdf.Rectangle rectangle = new Aspose.Pdf.Rectangle(lowerLeftX, lowerLeftY, upperRightX, upperRightY);
Matrix matrix = new Matrix(new double[] { rectangle.URX - rectangle.LLX, 0, 0, rectangle.URY - rectangle.LLY, rectangle.LLX, rectangle.LLY });

// Verwendung des Operators ConcatenateMatrix (Matrix verketten): Definiert, wie das Bild platziert werden muss
page.Contents.Add(new Aspose.Pdf.Operators.ConcatenateMatrix(matrix));
XImage ximage = page.Resources.Images[page.Resources.Images.Count];

// Verwenden des Do-Operators: Dieser Operator zeichnet ein Bild
page.Contents.Add(new Aspose.Pdf.Operators.Do(ximage.Name));

// Verwendung des GRestore-Operators: Dieser Operator stellt den Grafikzustand wieder her
page.Contents.Add(new Aspose.Pdf.Operators.GRestore());

// Aktualisiertes Dokument speichern
pdfDocument.Save("AddImage_out.pdf");

Bilder aus PDF in C# extrahieren

Falls Sie alle Bilder aus einer PDF Datei extrahieren möchten, können Sie dies tun, indem Sie die folgenden Schritte ausführen.

  • Verwenden Sie die Klasse Document, um eine vorhandene PDF Datei zu laden.
  • Rufen Sie das gewünschte Bild im Objekt XImage aus der Sammlung Ressourcen einer bestimmten Seite mithilfe des Index ab.
  • Speichern Sie das extrahierte Bild im gewünschten Format mit der methode XImage.Save(FileStream, ImageFormat).

Das folgende Codebeispiel zeigt, wie Bilder mit C# aus PDF extrahiert werden.

// Vollständige Beispiele und Datendateien finden Sie unter https://github.com/aspose-pdf/Aspose.PDF-for-.NET
// Dokument öffnen
Document pdfDocument = new Document("ExtractImages.pdf");

// Extrahieren Sie ein bestimmtes Bild
XImage xImage = pdfDocument.Pages[1].Resources.Images[1];

FileStream outputImage = new FileStream("output.jpg", FileMode.Create);

// Ausgabebild speichern
xImage.Save(outputImage, ImageFormat.Jpeg);
outputImage.Close();

Bilder aus PDF in C# entfernen

Sobald Sie Zugriff auf die Ressourcen einer Seite im PDF Format haben, können Sie die Bilder daraus entfernen. Im Folgenden sind die Schritte zum Entfernen von Bildern aus einer PDF Datei mit C# aufgeführt.

Das folgende Codebeispiel zeigt, wie Bilder mit C# aus einer PDF Datei entfernt werden.

// Vollständige Beispiele und Datendateien finden Sie unter https://github.com/aspose-pdf/Aspose.PDF-for-.NET
// Dokument öffnen
Document pdfDocument = new Document("DeleteImages.pdf");

// Löschen Sie ein bestimmtes Bild
pdfDocument.Pages[1].Resources.Images.Delete(1);

// Aktualisierte PDF Datei speichern
pdfDocument.Save("output.pdf");

Bild in PDF in C# ersetzen

Mit Aspose.PDF for .NET können Sie auch ein bestimmtes Bild im PDF ersetzen. Dazu können Sie das Bild in der Bildersammlung der Seite ersetzen. Im Folgenden finden Sie die Schritte zum Ersetzen eines Bilds in PDF mithilfe von C#.

  • Laden Sie die PDF Datei mit der Klasse Document.
  • Ersetzen Sie das gewünschte Bild mit der methode [Document.Pages1.Resources.Images.Replace(Int32, Stream, Int32, Boolean)]24.
  • Speichern Sie die aktualisierte PDF Datei mit der methode Document.Save(String).

Das folgende Codebeispiel zeigt, wie ein Bild in PDF mithilfe von C# ersetzt wird.

// Vollständige Beispiele und Datendateien finden Sie unter https://github.com/aspose-pdf/Aspose.PDF-for-.NET
// Dokument öffnen
Document pdfDocument = new Document("input.pdf");

// Ersetzen Sie ein bestimmtes Bild
pdfDocument.Pages[1].Resources.Images.Replace(1, new FileStream("lovely.jpg", FileMode.Open));

// Aktualisierte PDF Datei speichern
pdfDocument.Save("output.pdf");

C# .NET PDF API – Holen Sie sich eine kostenlose Lizenz

Sie können eine kostenlose temporäre Lizenz erhalten, um die API ohne Evaluierungseinschränkungen zu testen.

Fazit

Bilder und grafische Objekte sind wichtige Elemente von PDF Dokumenten. Daher haben wir in diesem Artikel behandelt, wie Sie Bilder in einer PDF Datei mit der C# .NET API bearbeiten. Das Schritt-für-Schritt-Tutorial und die Codebeispiele haben gezeigt, wie Sie Bilder in PDF Dateien in C# hinzufügen, extrahieren, entfernen und ersetzen. Weitere Informationen zur C# PDF API finden Sie in der Dokumentation.

Siehe auch