Generieren Sie Miniaturansichten für PDF-Dateien in C#

Möglicherweise müssen Sie beim Einbetten der PDF-Dokumente in eine Webanwendung häufig Miniaturansichten erstellen. Außerdem sind beim Erstellen eines PDF-Viewers Miniaturansichten von Seiten erforderlich. Für solche Szenarien behandelt dieser Artikel das programmgesteuerte Generieren von Miniaturansichten einer PDF-Datei in C# .NET. Wir werden ausdrücklich behandeln, wie Sie ein Miniaturbild einer bestimmten Seite oder aller Seiten in einer PDF-Datei erstellen.

C# .NET-API zum Generieren von Miniaturansichten von PDF

Aspose.PDF for .NET ist eine C#-Klassenbibliothek, mit der Sie PDF-Dokumente in .NET-Anwendungen erstellen und bearbeiten können. Mit der API können Sie ganz einfach sowohl grundlegende als auch erweiterte PDF-Automatisierungsvorgänge durchführen. Wir werden diese API verwenden, um Miniaturansichten einer PDF-Datei zu generieren. Die API kann als DLL heruntergeladen oder über NuGet installiert werden.

PM> Install-Package Aspose.Pdf

Generieren Sie eine Miniaturansicht einer PDF-Datei in C# .NET

Normalerweise müssen Sie ein einzelnes Miniaturbild für ein PDF-Dokument erstellen. Die Seite für die Miniaturansicht kann das Deckblatt oder eine beliebige andere Seite Ihrer Wahl sein. Im Folgenden sind die Schritte zum Generieren einer Miniaturansicht der gewünschten Seite einer PDF-Datei in C# aufgeführt.

  • Laden Sie die PDF-Datei mit der Klasse Dokument.
  • Rufen Sie eine Referenz der gewünschten Seite aus der Sammlung Document.Pages ab.
  • Erstellen Sie einen neuen FileStream für die Bilddatei.
  • Erstellen Sie eine Instanz der Klasse Resolution, um die Auflösung des Miniaturbilds festzulegen.
  • Instanziieren Sie JpegDevice und legen Sie die Höhe, Breite, Auflösung und Qualität des Bildes fest.
  • Generieren Sie Miniaturansichten mit der Methode JpegDevice.Process(Page, FileStream).
  • Schließen Sie den Dateistream.

Das folgende Codebeispiel zeigt, wie eine Miniaturansicht einer PDF-Datei in C# generiert wird.

// Dokument öffnen
Document pdfDocument = new Document("file.pdf");

int pageIndex = 0;

// Holen Sie sich die Seite des gewünschten Index aus der Sammlung
var page = pdfDocument.Pages[pageIndex];

// Stream für Bilddatei erstellen
using (FileStream imageStream = new FileStream("Thumbanils_" + page.Number + ".jpg", FileMode.Create))
{
    // Resolution-Objekt erstellen
    Resolution resolution = new Resolution(300);

    // Erstellen Sie eine Instanz von JpegDevice und legen Sie Höhe, Breite, Auflösung und Bildqualität fest
    JpegDevice jpegDevice = new JpegDevice(45, 59, resolution, 100);

    // Konvertieren Sie eine bestimmte Seite und speichern Sie das Bild zum Streamen
    jpegDevice.Process(page, imageStream);

    // Stream schließen
    imageStream.Close();
}

Generieren Sie Miniaturansichten aller Seiten in PDF in C#

Im Folgenden sind die Schritte zum Generieren von Miniaturansichten für alle Seiten in PDF in C# aufgeführt.

  • Laden Sie die PDF-Datei mit der Klasse Document.
  • Durchlaufen Sie alle Seiten in PDF mit der Sammlung Document.Pages.
  • Führen Sie in jeder Iteration die folgenden Vorgänge aus:
    • Erstellen Sie einen neuen FileStream für die Bilddatei.
    • Erstellen Sie eine Instanz der Klasse Resolution, um die Auflösung des Miniaturbilds festzulegen.
    • Instanziieren Sie JpegDevice und legen Sie die Höhe, Breite, Auflösung und Qualität des Bildes fest.
    • Generieren Sie Miniaturansichten mit der Methode JpegDevice.Process(Page, FileStream).
    • Schließen Sie den Dateistream.

Das folgende Codebeispiel zeigt, wie Miniaturansichten für alle Seiten in PDF generiert werden.

// Dokument öffnen
Document pdfDocument = new Document("file.pdf");

// Durch die Seiten blättern
for (int pageCount = 1; pageCount <= pdfDocument.Pages.Count; pageCount++)
{
    // Stream für jedes Bild erstellen
    using (FileStream imageStream = new FileStream("Thumbanils_" + pageCount + ".jpg", FileMode.Create))
    {
        // Resolution-Objekt erstellen
        Resolution resolution = new Resolution(300);

        // Erstellen Sie eine Instanz von JpegDevice und legen Sie Höhe, Breite, Auflösung und Bildqualität fest
        JpegDevice jpegDevice = new JpegDevice(45, 59, resolution, 100);

        // Konvertieren Sie eine bestimmte Seite und speichern Sie das Bild zum Streamen
        jpegDevice.Process(pdfDocument.Pages[pageCount], imageStream);

        // Stream schließen
        imageStream.Close();
    }
}

Holen Sie sich eine kostenlose Lizenz

Sie können eine kostenlose temporäre Lizenz erhalten, um Aspose.PDF für .NET ohne Evaluierungseinschränkungen zu verwenden.

Fazit

In diesem Artikel haben Sie gelernt, wie Sie Miniaturansichten für PDF-Dateien in C# generieren. Sie haben gesehen, wie Sie ein Miniaturbild einer bestimmten Seite oder aller Seiten in einer PDF-Datei erstellen. Außerdem können Sie mithilfe der Dokumentation mehr über die C#-PDF-API erfahren. Falls Sie Fragen oder Anregungen haben, können Sie uns über unser Forum kontaktieren.

Siehe auch