C# PDF-Dokumente drucken

This article was translated from English: Does it need improvement?
Translated
View the article in English

Sie können ein PDF in .NET-Anwendungen mit Hilfe von Visual Basic- oder C#-Code problemlos drucken. In diesem Tutorial erfahren Sie, wie Sie die C#-Funktionen zum Drucken von PDF-Dateien programmgesteuert nutzen können.



C# NuGet-Bibliothek für PDF

Installieren mit NuGet

Install-Package IronPdf
oder
Java PDF JAR

Herunterladen DLL

DLL herunterladen

Manuelle Installation in Ihr Projekt

C# NuGet-Bibliothek für PDF

Installieren mit NuGet

Install-Package IronPdf
oder
Java PDF JAR

Herunterladen DLL

DLL herunterladen

Manuelle Installation in Ihr Projekt

Fangen Sie noch heute an, IronPDF in Ihrem Projekt mit einer kostenlosen Testversion zu verwenden.

Erster Schritt:
green arrow pointer

Schau dir an IronPDF an Nuget Für schnelle Installation und Bereitstellung. Mit über 8 Millionen Downloads verwandelt es PDF mit C#.

C# NuGet-Bibliothek für PDF nuget.org/packages/IronPdf/
Install-Package IronPdf

Erwägen Sie die Installation der IronPDF DLL direkt. Laden Sie es herunter und installieren Sie es manuell für Ihr Projekt oder die GAC-Form: IronPdf.zip

Manuelle Installation in Ihr Projekt

DLL herunterladen

PDF erstellen und drucken

Sie können ein PDF-Dokument direkt und geräuschlos an einen Drucker senden oder eineSystem.Drawing.Printing.PrintDocument objekt, mit dem gearbeitet werden kann und das an GUI-Druckdialoge gesendet werden kann.

Der folgende Code kann für beide Optionen verwendet werden:

:path=/static-assets/pdf/content-code-examples/how-to/csharp-print-pdf-create-and-print-pdf.cs
using IronPdf;
using System.Threading.Tasks;

// Create a new PDF and print it
ChromePdfRenderer renderer = new ChromePdfRenderer();

PdfDocument pdf = renderer.RenderUrlAsPdf("https://www.nuget.org/packages/IronPdf");

// Print PDF from default printer
await pdf.Print();

// For advanced silent real-world printing options, use PdfDocument.GetPrintDocument
// Remember to add an assembly reference to System.Drawing.dll
System.Drawing.Printing.PrintDocument PrintDocYouCanWorkWith = pdf.GetPrintDocument();
Imports IronPdf
Imports System.Threading.Tasks

' Create a new PDF and print it
Private renderer As New ChromePdfRenderer()

Private pdf As PdfDocument = renderer.RenderUrlAsPdf("https://www.nuget.org/packages/IronPdf")

' Print PDF from default printer
Await pdf.Print()

' For advanced silent real-world printing options, use PdfDocument.GetPrintDocument
' Remember to add an assembly reference to System.Drawing.dll
Dim PrintDocYouCanWorkWith As System.Drawing.Printing.PrintDocument = pdf.GetPrintDocument()
VB   C#

Fortgeschrittener Druck

IronPDF ist durchaus in der Lage, fortgeschrittene Druckfunktionen wie die Suche nach dem Druckernamen oder dessen Einstellung und die Einstellung der Druckerauflösung zu bewältigen.

Druckername angeben

Um den Druckernamen festzulegen, müssen Sie lediglich das aktuelle Druckdokumentobjekt abrufen(mit der Verwendung desGetPrintDocument methode des PDF-Dokuments)verwenden Sie dann die Eigenschaft PrinterSettings.PrinterName wie folgt:

:path=/static-assets/pdf/content-code-examples/how-to/csharp-print-pdf-specify-printer-name.cs
using IronPdf;

PdfDocument pdf = PdfDocument.FromFile("sample.pdf");

// Get PrintDocument object
var printDocument = pdf.GetPrintDocument();

// Assign the printer name
printDocument.PrinterSettings.PrinterName = "Microsoft Print to PDF";

// Print document
printDocument.Print();
Imports IronPdf

Private pdf As PdfDocument = PdfDocument.FromFile("sample.pdf")

' Get PrintDocument object
Private printDocument = pdf.GetPrintDocument()

' Assign the printer name
printDocument.PrinterSettings.PrinterName = "Microsoft Print to PDF"

' Print document
printDocument.Print()
VB   C#

Druckerauflösung einstellen

Die Auflösung bezieht sich auf die Anzahl der Pixel, die gedruckt oder angezeigt werden, je nach Ausgabe. Sie können die Auflösung Ihres Drucks über IronPDF einstellen, indem Sie die FunktionDefaultPageSettings.PrinterResolution eigenschaft des PDF-Dokuments. Hier ist eine sehr schnelle Demonstration:

:path=/static-assets/pdf/content-code-examples/how-to/csharp-print-pdf-specify-printer-resolution.cs
using IronPdf;
using System.Drawing.Printing;

PdfDocument pdf = PdfDocument.FromFile("sample.pdf");

// Get PrintDocument object
var printDocument = pdf.GetPrintDocument();

// Set printer resolution
printDocument.DefaultPageSettings.PrinterResolution = new PrinterResolution
{
    Kind = PrinterResolutionKind.Custom,
    X = 1200,
    Y = 1200
};

// Print document
printDocument.Print();
Imports IronPdf
Imports System.Drawing.Printing

Private pdf As PdfDocument = PdfDocument.FromFile("sample.pdf")

' Get PrintDocument object
Private printDocument = pdf.GetPrintDocument()

' Set printer resolution
printDocument.DefaultPageSettings.PrinterResolution = New PrinterResolution With {
	.Kind = PrinterResolutionKind.Custom,
	.X = 1200,
	.Y = 1200
}

' Print document
printDocument.Print()
VB   C#

Wie Sie sehen können, habe ich die Auflösung auf ein benutzerdefiniertes Niveau eingestellt: 1200 vertikal und 1200 horizontal.

PrintToFile-Methode

Mit der Methode PdfDocument.PrintToFile können Sie das PDF-Dokument in eine Datei drucken. Sie geben einfach den Ausgabedateipfad an und legen fest, ob Sie eine Vorschau sehen möchten oder nicht. Der folgende Code druckt in die angegebene Datei, ohne eine Vorschau anzuzeigen:

:path=/static-assets/pdf/content-code-examples/how-to/csharp-print-pdf-printtofile.cs
using IronPdf;
using System.Threading.Tasks;

PdfDocument pdf = PdfDocument.FromFile("sample.pdf");

await pdf.PrintToFile("PathToFile", false);
Imports IronPdf
Imports System.Threading.Tasks

Private pdf As PdfDocument = PdfDocument.FromFile("sample.pdf")

Await pdf.PrintToFile("PathToFile", False)
VB   C#

Verfolgung von Druckvorgängen mit C#

Das Schöne an C# in Verbindung mit IronPDF ist, dass es eigentlich ganz einfach ist, den Überblick über gedruckte Seiten oder alles, was mit Drucken zu tun hat, zu behalten. Im nächsten Beispiel zeige ich, wie man den Namen des Druckers und die Auflösung ändert und wie man die Anzahl der gedruckten Seiten ermittelt.

:path=/static-assets/pdf/content-code-examples/how-to/csharp-print-pdf-trace-printing-process.cs
using IronPdf;

PdfDocument pdf = PdfDocument.FromFile("sample.pdf");

// Get PrintDocument object
var printDocument = pdf.GetPrintDocument();

// Subscribe to the PrintPage event
var printedPages = 0;
printDocument.PrintPage += (sender, args) => printedPages++;

// Print document
printDocument.Print();
Imports IronPdf

Private pdf As PdfDocument = PdfDocument.FromFile("sample.pdf")

' Get PrintDocument object
Private printDocument = pdf.GetPrintDocument()

' Subscribe to the PrintPage event
Private printedPages = 0
Private printDocument.PrintPage += Sub(sender, args) printedPages++

' Print document
printDocument.Print()
VB   C#