Diese Seite kann automatisch übersetzten Text enthalten.

Konvertieren Sie PDF in ein Bild in C# und VB.NET

Es gibt Fälle, in denen Sie PDFs in Bilder konvertieren müssen. Beispielsweise müssen Sie möglicherweise Miniaturbilder aus PDFs erstellen oder bei einigen PDF-Dokumenten eine optische Zeichenerkennung (OCR) durchführen.

Sie können die Docotic.Pdf-Bibliothek verwenden, um PDF-Dokumente in C#- und VB.NET-Projekten in Bilder zu konvertieren. Die Bibliothek wird zu 100 % ohne externe Abhängigkeiten verwaltet. System.Drawing.dll und GDI+ werden nicht für die PDF-Rasterisierung verwendet. Daher erhalten Sie eine konsistente Ausgabe unter Windows, Linux, macOS, iOS und Android.

Docotic.Pdf-Bibliothek 9.3.17036-dev Regressionstests 14,665 bestanden NuGet-Downloads insgesamt 4,191,515

Sie können die Binärdateien der Bibliothek herunterladen oder deren NuGet-Paket verwenden. Um Docotic.Pdf ohne Einschränkungen im Evaluierungsmodus auszuprobieren, können Sie den kostenlosen, zeitlich begrenzten Lizenzschlüssel erhalten, indem Sie das Formular hier verwenden.

Docotic.Pdf bietet viele Optionen für die Konvertierung von PDF in Bilder. Und es kann auch PDF-Dokumente rendern und drucken. Sehen wir uns an, wie Sie mithilfe der Docotic.Pdf-Bibliothek PDF-Dateien in Bilder konvertieren können.

PDF in Bild in C# und VB.NET

Speichern Sie die PDF-Seite als PNG-, JPG- oder TIFF-Bild

Mit der Bibliothek Docotic.Pdf können Sie PDF-Seiten in PNG-, JPEG- oder TIFF-Bilder konvertieren. Sie können resultierende Bilder in einen Stream oder eine Datei schreiben. Dieses C#-Snippet speichert PDF-Seiten als PNG-Bilder mit weißem Hintergrund und einer Auflösung von 300 x 300 dpi:

using BitMiracle.Docotic.Pdf;

using (var pdf = new PdfDocument("your_document.pdf"))
{
    PdfDrawOptions options = PdfDrawOptions.Create();
    options.BackgroundColor = new PdfRgbColor(255, 255, 255);
    options.HorizontalResolution = 300;
    options.VerticalResolution = 300;

    for (int i = 0; i < pdf.PageCount; ++i)
        pdf.Pages[i].Save($"page_{i}.png", options);
}

Mit der Eigenschaft PdfDrawOptions.Compression können Sie die Bibliothek anweisen, JPEG- oder TIFF-Bilder anstelle von PNG zu erstellen. Der folgende Ausschnitt zeigt, wie Sie zur Erstellung von JPEG-Bildern wechseln:

PdfDrawOptions options = ..;
options.Compression = ImageCompressionOptions.CreateJpeg();

Verwandte C#- und VB.NET-Beispiele sind auf GitHub verfügbar.

PDF-Dokument in mehrseitiges TIFF in .NET umwandeln

Sie können das gesamte Dokument mit der Methode PdfDocument.SaveAsTiff in einem mehrseitigen TIFF-Bild speichern. Hier ist ein C#-Beispiel für die Konvertierung von PDF in TIFF:

using (var pdf = new PdfDocument("document.pdf"))
{
    PdfDrawOptions options = PdfDrawOptions.Create();
    options.BackgroundColor = new PdfRgbColor(255, 255, 255);

    pdf.SaveAsTiff("result.tiff", options);
}

Laden Sie den Beispielcode PDF als mehrseitiges TIFF speichern von GitHub herunter und probieren Sie ihn aus. Dort sind sowohl C#- als auch VB.NET-Versionen verfügbar.

Erstellen Sie Miniaturansichten aus PDF

Mit Hilfe der Docotic.Pdf-Bibliothek können Sie Miniaturansichten von PDF-Seiten generieren. Dieses C#-Beispiel erstellt eine Miniaturansicht mit 200 x 200 Pixeln aus der ersten Seite der angegebenen PDF-Datei und schreibt die Miniaturansicht in einen Speicherstream:

using (var pdf = new PdfDocument("document.pdf"))
{
    PdfDrawOptions options = PdfDrawOptions.CreateFitSize(new PdfSize(200, 200), false);
    options.BackgroundColor = new PdfGrayColor(100);
    
    using (var stream = new MemoryStream())
    {
        pdf.Pages[0].Save(stream, options);
        ..
    }
}

Sie können auch die Methoden PdfDrawOptions.CreateFitWidth oder PdfDrawOptions.CreateFitHeight verwenden, um Miniaturbilder mit der angegebenen Breite oder Höhe zu erstellen.

Konvertieren Sie PDF-Dateien in bitonale oder Graustufenbilder in .NET

Die Bibliothek kann PDF-Dokumente in bitonale (schwarzweiße) TIFF-Bilder konvertieren. Dieses Beispiel zeigt, wie man in C# ein bitonales TIFF-Bild aus einem PDF-Dokument erstellt:

using (var pdf = new PdfDocument("colored.pdf"))
{
    PdfDrawOptions options = PdfDrawOptions.Create();
    options.BackgroundColor = new PdfRgbColor(255, 255, 255);
    options.Compression = ImageCompressionOptions.CreateTiff().SetBitonal();

    pdf.SaveAsTiff("bitonal.tiff", options);
}

Sie können auch einen Schwellenwert angeben, wenn Sie die Methode TiffImageCompressionOptions.SetBitonalThreshold verwenden. Der Schwellenwert definiert, wie Graustufen-, RGB- oder CMYK-Farben in Schwarzweiß umgewandelt werden.

Docotic.Pdf unterstützt auch die Konvertierung von PDF-Bildern in Graustufen-PNG-, JPG- oder TIFF-Bilder. Verwenden Sie einfach eines von PngImageCompressionOptions.SetGrayscale, JpegImageCompressionOptions.SetGrayscale, TiffImageCompressionOptions.SetGrayscale-Methoden wie im folgenden Snippet:

PdfDrawOptions options = ..;
options.Compression = ImageCompressionOptions.CreatePng().SetGrayscale();

PDF zoomen

Mit der Methode PdfDrawOptions.CreateZoom können Sie ein Bild einer PDF-Seite mit einer bestimmten Zoomstufe erhalten. Dieses C#-Beispiel konvertiert eine PDF-Seite in ein Bild mit einer Zoomstufe von 400 %:

using (var pdf = new PdfDocument(@"document.pdf"))
{
    PdfDrawOptions options = PdfDrawOptions.CreateZoom(400);
    pdf.Pages[0].Save("zoomed.png", options);
}

Teilweise PDF-zu-Bild-Rendering

Möglicherweise müssen Sie nur einen Teil einer PDF-Seite in ein Bild konvertieren. Zum Beispiel, um eine große PDF-Seite in Kacheln aufzuteilen. Oder um unerwünschte Inhalte zuzuschneiden.

Dieser C#-Code speichert ein Bild eines 256x256-Punkt-Bereichs in der linken oberen Ecke einer PDF-Seite:

using (var pdf = new PdfDocument("large.pdf"))
{
    PdfDrawOptions options = PdfDrawOptions.Create();
    options.BackgroundColor = new PdfRgbColor(255, 255, 255);

    PdfPage page = pdf.Pages[0];
    PdfBox cropBoxBefore = page.CropBox;

    page.CropBox = new PdfBox(0, cropBoxBefore.Height - 256, 256, cropBoxBefore.Height);
    page.Save("part.png", options);

    page.CropBox = cropBoxBefore;
}

Gekacheltes PDF-zu-Bild-Rendering

Docotic.Pdf bietet integrierte Unterstützung für die gekachelte Darstellung von PDF in TIFF. Diese Methode ist nützlich, wenn Sie große PDF-Seiten mit einer festen Speichermenge verarbeiten müssen.

Ihr PDF-Dokument enthält beispielsweise eine Seite mit einer Größe von 10.000 x 10.000 Punkten. Die normale Konvertierung dieser Seite in ein RGB-Bild mit einer Auflösung von 300 DPI erfordert über 1 GB (= 10000 * 10000 * 3 * 300 / 72,0 Byte) Speicher für die unkomprimierten RGB-Zwischenbilddaten. Durch gekacheltes Rendering mit 1024x1024 Kacheln können Sie den Speicherverbrauch für die unkomprimierten RGB-Bilddaten auf 12 MB (= 1024 * 1024 * 3 * 300 / 72,0 Byte) begrenzen.

Beachten Sie, dass die Konvertierung von gekachelten PDFs in Bilder langsamer ist als die normale Konvertierung. Für jede Kachel muss die Bibliothek alle PDF-Seitenvorgänge verarbeiten, auch wenn sich einige davon nicht auf die aktuelle Kachel auswirken.

Dieses C#-Beispiel zeigt, wie man PDF mit 512x512-Kacheln in ein Bild konvertiert:

using (var pdf = new PdfDocument("large.pdf"))
{
    PdfDrawOptions options = PdfDrawOptions.Create();
    options.Compression = ImageCompressionOptions.CreateTiff().SetTileSize(512, 512);
    options.BackgroundColor = new PdfGrayColor(100);
    options.HorizontalResolution = 300;
    options.VerticalResolution = 300;

    pdf.Pages[0].Save("tiled.tiff", options);
}

Abschluss

Docotic.Pdf-Bibliothek bietet verschiedene Optionen für die PDF-zu-Bild-Konvertierung in .NET. Sie können PDF-Seiten in Vollbild- oder Miniaturbilder in den Formaten PNG, TIFF und JPEG konvertieren. Und Sie können PDF-Dokumente als mehrseitige TIFF-Dateien speichern. Die Bibliothek kann auch Bitonal- und Graustufenbilder erstellen.

Laden Sie PDF zum Bild-Beispiele von GitHub herunter und probieren Sie sie aus.

Kontaktieren Sie uns, wenn Sie Fragen zur PDF-zu-Bild-Konvertierung haben.