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.5.17615-dev Regressionstests 14,813 bestanden NuGet-Downloads insgesamt 4,924,084

Die Bibliothek ist auf NuGet und auf unserer Site verfügbar. Holen Sie sich die Bibliothek und einen kostenlosen zeitlich begrenzten Lizenzschlüssel auf der Laden Sie die C# .NET PDF-Bibliothek herunter-Seite.

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.