PDF-Dateien drucken

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

von Chaknith Bin

Das Senden einer PDF-Datei an einen Drucker aus dem .NET C#-Code automatisiert den Druckvorgang und ermöglicht es Ihnen, Druckfunktionen in Ihre Anwendungen zu integrieren, den manuellen Aufwand zu reduzieren und die Konsistenz der PDF-Datei-Produktion zu gewährleisten. Es bietet eine präzise Kontrolle über den Druckprozess.

IronPDF bietet die Möglichkeit, mit einem einzigen Methodenaufruf schnell und programmatisch auf einem physischen Drucker zu drucken, so dass Sie mehrere PDF-Dateien drucken können. Die Druckerauflösung kann auch mit konfigurierbaren horizontalen und vertikalen DPI angegeben werden. Verwenden Sie die Methode, die sowohl Microsoft PrinterSettings als auch PrintController akzeptiert, um weitere Kontrolle über den PDF-Druckprozess zu erhalten.


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-Datei drucken Beispiel

Auf die Methode "Print" kann über das PdfDocument-Objekt zugegriffen werden. Sowohl neu gerenderte als auch bestehende PDF-Dateien können auf diese Weise gedruckt werden. Rufen Sie die Methode Print auf, um eine PDF-Datei mit dem Standarddrucker des Geräts zu drucken. Sie können jedoch auch auf einem bestimmten Drucker drucken, indem Sie den Druckernamen als String an die Methode "Print" übergeben.

Bitte beachten Sie
Alle Druckfunktionen werden nur unter "Windows" unterstützt.

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

ChromePdfRenderer renderer = new ChromePdfRenderer();

PdfDocument pdf = renderer.RenderHtmlAsPdf("<h1>Test printing</h1>");

// Send the document to "Microsoft Print to PDF" printer
pdf.Print("Microsoft Print to PDF");
Imports IronPdf

Private renderer As New ChromePdfRenderer()

Private pdf As PdfDocument = renderer.RenderHtmlAsPdf("<h1>Test printing</h1>")

' Send the document to "Microsoft Print to PDF" printer
pdf.Print("Microsoft Print to PDF")
VB   C#
Warteschlange drucken

Druckerauflösung

Geben Sie die Auflösung der gedruckten PDF-Datei an, indem Sie die gewünschte DPI-Zahl an die Methode "Print" übergeben. Dadurch wird ein gleicher DPI-Wert für die Vertikale und die Horizontale eingestellt. Falls unterschiedliche DPI-Werte für die Vertikale und die Horizontale gewünscht sind, können Sie zwei Parameter angeben, wobei die erste Zahl für die Horizontale gilt(x)und die zweite für die Vertikale(y).

:path=/static-assets/pdf/content-code-examples/how-to/print-pdf-dpi.cs
using IronPdf;

ChromePdfRenderer renderer = new ChromePdfRenderer();

PdfDocument pdf = renderer.RenderHtmlAsPdf("<h1>Test printing</h1>");

// Set custom DPI
pdf.Print(300);

// Specify printing resolution
pdf.Print(10, 10, "Microsoft Print to PDF");
Imports IronPdf

Private renderer As New ChromePdfRenderer()

Private pdf As PdfDocument = renderer.RenderHtmlAsPdf("<h1>Test printing</h1>")

' Set custom DPI
pdf.Print(300)

' Specify printing resolution
pdf.Print(10, 10, "Microsoft Print to PDF")
VB   C#

Im nächsten Beispiel sehen wir uns an, wie man eine PDF-Datei rastert und druckt.


In Datei drucken

Die Methode PrintToFile ist ein schneller Weg, um PDF-Dokumente zu rastern und sie in eine Bitmap zu konvertieren(pixelbasiert) bildformat, bevor sie als PDF-Datei gespeichert werden. Diese Rasterung wird von dem in Windows integrierten Drucker durchgeführt; in meinem Fall ist es die "Microsoft Print to PDF"-Methode Diese Methode druckt die PDF-Datei nur auf der Festplatte und sendet sie nicht an einen physischen Drucker.

:path=/static-assets/pdf/content-code-examples/how-to/print-pdf-print-to-file.cs
using IronPdf;

ChromePdfRenderer renderer = new ChromePdfRenderer();

PdfDocument pdf = renderer.RenderHtmlAsPdf("<h1>Test printing</h1>");

// Print to file
pdf.PrintToFile("");
Imports IronPdf

Private renderer As New ChromePdfRenderer()

Private pdf As PdfDocument = renderer.RenderHtmlAsPdf("<h1>Test printing</h1>")

' Print to file
pdf.PrintToFile("")
VB   C#

Entdecken Sie die Einstellungen zum Drucken von PDF-Dokumenten

Um die Druckoptionen weiter zu konfigurieren, verwenden Sie die Methode GetPrintDocument, die sowohl Microsoft PrinterSettings als auch PrintController akzeptiert. Die Methode GetPrintDocument gibt das aktuelle Druckdokument-Objekt zurück. Die Optionen von PrinterSettings werden im Anschluss an das Codebeispiel beschrieben, während PrintController verwendet werden kann, um die Art und Weise der Druckausführung anzupassen, und Optionen für die Behandlung von Ausnahmen und Fortschrittsberichten bietet, z. B. den Druckdialog, die Druckvorschau, die Verfolgung von Druckvorgängen und andere druckbezogene Aufgaben.

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

ChromePdfRenderer renderer = new ChromePdfRenderer();

PdfDocument pdf = renderer.RenderHtmlAsPdf("<h1>Testing</h1>");

PrinterSettings settings = new PrinterSettings() {
    PrinterName = "Microsoft Print to PDF",

    // Number of Copy
    Copies = 2,

    // Page range to print
    FromPage = 2,
    ToPage = 4,
};

PrintDocument document = pdf.GetPrintDocument(settings);

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

Private renderer As New ChromePdfRenderer()

Private pdf As PdfDocument = renderer.RenderHtmlAsPdf("<h1>Testing</h1>")

Private settings As New PrinterSettings() With {
	.PrinterName = "Microsoft Print to PDF",
	.Copies = 2,
	.FromPage = 2,
	.ToPage = 4
}

Private document As PrintDocument = pdf.GetPrintDocument(settings)

' Print
document.Print()
VB   C#
  • CanDuplex: Zeigt an, ob der Drucker Duplex unterstützt(beidseitig) drucken. Wenn dies der Fall ist, kann auf beiden Seiten des Papiers gedruckt werden; sonst kann sie es nicht.
  • Zusammentragen: Legt fest, ob mehrere PDF-Dateien oder Kopien eines PDF-Dokuments zusammengeführt werden sollen(geordnet) wenn gedruckt. Wenn ja, sortiert der Drucker die Kopien; wenn falsch, dann nicht.
  • Exemplare: Legt die Anzahl der zu druckenden Kopien des PDF-Dokuments fest. Sie legt fest, wie viele identische Kopien des Dokuments gedruckt werden sollen.
  • DefaultPageSettings: Stellt die Standardseiteneinstellungen für den Drucker dar, einschließlich Papierformat, Ränder und Ausrichtung.
  • Duplex: Gibt den Duplex an(beidseitig) druckmodus zu verwenden. Zu den Optionen gehören Duplex.Default, Duplex.Simplex(einseitig), Duplex.Horizontal und Duplex.Vertikal.
  • InstallierteDrucker: Enthält eine Sammlung der auf dem System installierten Druckernamen. Sie können diese Sammlung durchlaufen, um die Namen der verfügbaren Drucker zu erhalten.
  • IsDefaultPrinter: Gibt an, ob der in PrinterName angegebene Drucker als Standarddrucker auf dem System eingestellt ist.
  • IstPlotter: Bestimmt, ob der Drucker ein Plotter ist. Plotterdrucker werden häufig für großformatige Drucke verwendet, z. B. für Architektur- oder Konstruktionszeichnungen.
  • IstGültig: Gibt an, ob die Druckereinstellungen gültig sind und für den Druck von PDF-Dateien verwendet werden können.
  • QuerformatWinkel: Gibt den Winkel an(rotation) des Querformats für den Drucker, normalerweise 90 Grad für das Hochformat.
  • MaximumCopies: Stellt die maximale Anzahl von Kopien dar, die für den PDF-Druck angegeben werden kann.
  • MaximaleSeite: Gibt die maximale Seitenzahl an, die für den Druck oder die Konvertierung eingestellt werden kann.
  • MindestSeite: Gibt die Mindestseitenzahl an, die für den Druck oder die Konvertierung festgelegt werden kann.
  • PaperSizes: Bietet eine Sammlung von unterstützten Papierformaten für den Drucker. Sie können diese Sammlung abfragen, um die verfügbaren Papierformate zu ermitteln.
  • Papierquellen: Bietet eine Sammlung von Papierquellen oder Fächern, die für den Drucker verfügbar sind. Dies kann bei der Auswahl der Papierquelle für den Druck von PDF-Dateien nützlich sein.
  • Druckername: Gibt den Namen des Druckers an, der zum Drucken oder Konvertieren verwendet werden soll.
  • DruckerAuflösungen: Bietet eine Sammlung verfügbarer Druckerauflösungen, mit denen Sie die Druckqualität auswählen können.
  • PrintFileName: Liest oder setzt den Dateinamen beim Drucken in eine Datei mit PrintToFile.
  • DruckBereich: Gibt den Bereich der zu druckenden PDF-Seiten an, z. B. alle Seiten, einen bestimmten Bereich oder eine Auswahl. Verwenden Sie diese Option, um bestimmte Seiten zu drucken.
  • VonSeite: Gibt die Nummer der Anfangsseite für den Druck oder die Konvertierung an. Der Druckvorgang beginnt auf dieser Seite.
  • BisSeite: Gibt die Endseitennummer für den Druck oder die Konvertierung an. Nach Erreichen dieser Seite wird der Druckvorgang abgebrochen.
  • PrintToFile: Gibt an, ob in eine Datei statt auf einen physischen Drucker gedruckt werden soll. Wenn true, können Sie den Dateipfad mit PrintFileName angeben.
  • UnterstütztFarbe: Gibt an, ob der Drucker Farbdruck unterstützt. Wenn true, wird der Druck in Farbe unterstützt; ansonsten ist sie auf Schwarz und Weiß beschränkt(monochrom) drucken.

    Um schließlich den Standarddrucker für den PDF-Druck zu konfigurieren, können Sie den Abschnitt "Drucker und Scanner" in den Geräteeinstellungen aufrufen.

Chaknith Bin

Software-Ingenieur

Chaknith ist der Sherlock Holmes der Entwickler. Zum ersten Mal kam ihm der Gedanke, dass er eine Zukunft in der Softwareentwicklung haben könnte, als er zum Spaß an Code Challenges teilnahm. Sein Schwerpunkt liegt auf IronXL und IronBarcode, aber er ist stolz darauf, Kunden mit jedem Produkt zu helfen. Chaknith nutzt sein Wissen aus direkten Gesprächen mit Kunden, um die Produkte selbst weiter zu verbessern. Sein anekdotisches Feedback geht über Jira-Tickets hinaus und unterstützt die Produktentwicklung, die Dokumentation und das Marketing, um das Gesamterlebnis der Kunden zu verbessern.Wenn er nicht im Büro ist, lernt er über maschinelles Lernen, programmiert und wandert.