C# PDF auf bestimmten Drucker drucken (Codebeispiel-Tutorial)
Chaknith Bin
1. September 2022
Teilen Sie:
IronPrint ist die brandneue .NET-Druckbibliothek von Iron Software, die Kompatibilität über eine Vielzahl von Plattformen, einschließlich Windows, macOS, Android und iOS, bietet. Beginnen Sie jetzt mit IronPrint!
Es gibt viele Fälle, in denen Entwickler PDF-Dokumente direkt aus ihrer Anwendung drucken müssen. Diese Aufgabe kann manchmal kompliziert erscheinen, wenn der Benutzer entweder mehrere PDF-Dateien drucken oder einen bestimmten Druckernamen verwenden möchte, der nicht dem Standarddrucker entspricht. Heute gibt es mehrere Methoden, die uns beim Drucken von PDF-Dateien helfen können. Einige davon sind kostenpflichtig, andere sind unregelmäßig und wieder andere sind schwierig umzusetzen.
IronPDF for .NET stellt eine Reihe von Klassen zur Verfügung, mit denen sich PDF-Dateien programmatisch erstellen lassen. Diese Klassen befinden sich in der IronPDF.Core-Assembly und sind so konzipiert, dass sie mit jeder .NET-Sprache, einschließlich C#, VB.NET, F# usw., einfach zu verwenden sind. Die Bibliothek bietet viele Funktionen zur Erstellung von PDF-Dokumenten, zur Bearbeitung vorhandener PDFs, zum Lesen von PDFs, zum Drucken von PDFs und zur programmatischen Erstellung von PDF-Formularen.
Werfen wir einen Blick auf einige Beispiel-Codefragmente zum Drucken einer PDF-Datei.
Rendering neuer oder Laden vorhandener PDF-Dokumente mit C#
Verwenden Sie die PrintDoc-Klasse, um den PDF-Drucker zu konfigurieren
Drucken Sie aus einem bestimmten Drucker, indem Sie die Eigenschaft PrinterName festlegen
Führen Sie die Print-Methode aus, um mit dem Standard-DPI oder einem benutzerdefinierten DPI zu drucken
IronPDF installieren
Installieren Sie zunächst die IronPDF-Bibliothek. Rufen Sie dazu die Paketmanager-Konsole auf und geben Sie den folgenden Befehl ein.
Install-Package IronPrint
Installieren Sie das Paket über die Paket-Manager-Konsole
Der nächste Schritt besteht darin, zunächst ein PDF-Dokument zu erstellen. Sie können auch einfach ein bestehendes PDF-Dokument laden, wenn Sie kein neues erstellen möchten. Lassen Sie uns ein PDF-Dokument erstellen.
Ein PDF-Dokument mit einer URL erstellen
Lassen Sie uns ein PDF-Dokument mit einer URL erstellen. IronPDF bietet zwei Funktionen für diesen Zweck. RenderUrlAsPdf und RenderUrlAsPdfAsync. Beide Funktionen haben die gleiche Funktionalität, außer dass RenderUrlAsPdfAsync asynchrone Funktionalität bietet.
Das folgende Codeschnipsel erstellt eine PDF-Datei aus der URL.
var renderer = new IronPdf.ChromePdfRenderer();
PdfDocument doc = renderer.RenderUrlAsPdf("https://en.wikipedia.org/wiki/PDF");
var renderer = new IronPdf.ChromePdfRenderer();
PdfDocument doc = renderer.RenderUrlAsPdf("https://en.wikipedia.org/wiki/PDF");
Dim renderer = New IronPdf.ChromePdfRenderer()
Dim doc As PdfDocument = renderer.RenderUrlAsPdf("https://en.wikipedia.org/wiki/PDF")
$vbLabelText $csharpLabel
Ein PDF-Dokument mit HTML-String erstellen
Es ist auch möglich, ein PDF-Dokument mit einem HTML-String zu erstellen. IronPDF bietet zwei Methoden zum Erstellen einer PDF-Datei mit einem HTML-String: RenderHtmlAsPdf und RenderHtmlAsPdfAsync. Diese Methoden sind einander ähnlich, der einzige Unterschied besteht darin, dass RenderHtmlAsPdfAsync für asynchrone Operationen verwendet wird.
Das folgende Codeschnipsel erstellt eine PDF-Datei aus dem HTML-Code.
IronPdf.ChromePdfRenderer renderer = new IronPdf.ChromePdfRenderer();
PdfDocument pdf = renderer.RenderHtmlAsPdf(@"<h1>My PDF File</h1> <p>This is sample PDF document created to demonstrate the PDF File generation using HTML string</p>");
IronPdf.ChromePdfRenderer renderer = new IronPdf.ChromePdfRenderer();
PdfDocument pdf = renderer.RenderHtmlAsPdf(@"<h1>My PDF File</h1> <p>This is sample PDF document created to demonstrate the PDF File generation using HTML string</p>");
Dim renderer As New IronPdf.ChromePdfRenderer()
Dim pdf As PdfDocument = renderer.RenderHtmlAsPdf("<h1>My PDF File</h1> <p>This is sample PDF document created to demonstrate the PDF File generation using HTML string</p>")
$vbLabelText $csharpLabel
Drucken von PDF-Dateien auf einem bestimmten Drucker
Es gibt zahlreiche Fälle, in denen das Drucken von PDF-Dateien mit einem bestimmten Drucker erforderlich ist. Diese Aufgabe kann einfach durch die Verwendung der Eigenschaft PrinterSettings.PrinterName erledigt werden. Setzen Sie den Druckernamen auf diese Eigenschaft. Lassen Sie uns kurz demonstrieren, wie man PDF-Dokumente in C# auf einem bestimmten Drucker ausgibt.
var printDoc = pdf.GetPrintDocument();
printDoc.PrinterSettings.PrinterName = "myPrinter";
var printDoc = pdf.GetPrintDocument();
printDoc.PrinterSettings.PrinterName = "myPrinter";
Dim printDoc = pdf.GetPrintDocument()
printDoc.PrinterSettings.PrinterName = "myPrinter"
$vbLabelText $csharpLabel
Die pdf bezieht sich auf eine PDF-Datei, die gerade aus der URL erstellt wurde.
GetPrintDocument Gibt ein PrintDocument für das PDF zurück, das eine detaillierte Steuerung beim Senden des PDFs an einen Drucker ermöglicht.
Anschließend kann bei Bedarf ein Druckername angegeben werden.
Dialog drucken
Nehmen wir an, der Benutzer muss alle Druckereinstellungen über den UI-Dialog auswählen, wie er in einem Word-Dokument oder in Adobe Acrobat erscheint. IronPDFs Funktionen können das Druck-GUI-Dialogfeld dem Benutzer anzeigen, indem nur ein Parameter an die Print-Funktion übergeben wird, wie unten gezeigt.
pdf.Print(true);
pdf.Print(true);
pdf.Print(True)
$vbLabelText $csharpLabel
Geben Sie einfach den Wert true an das Argument der Print-Funktion weiter, da dieser standardmäßig false ist. Es zeigt, wie einfach es ist, den GUI-Druckdialog anzuzeigen. Die Funktion pdf.Print() druckt auf einen Standarddrucker.
Geben Sie die Anzahl der Exemplare an
Falls mehrere Kopien eines Dokuments gedruckt werden sollen. Dies kann leicht erreicht werden, indem die Eigenschaft PrinterSettings.Copies festgelegt wird. Der folgende Beispielcode veranschaulicht dies.
var printDoc = pdf.GetPrintDocument();
printDoc.PrinterSettings.Copies = 5;
var printDoc = pdf.GetPrintDocument();
printDoc.PrinterSettings.Copies = 5;
Dim printDoc = pdf.GetPrintDocument()
printDoc.PrinterSettings.Copies = 5
$vbLabelText $csharpLabel
Hier ist pdf ein aktuelles Druckdokumentobjekt.
Seitenbereich zum Drucken der PDF-Datei auswählen
Es gibt häufig Anwendungsfälle, in denen die Benutzer nicht ein komplettes Dokument drucken möchten. In solchen Fällen wird die Angabe der Eigenschaften PrinterSettings.FromPage und PrinterSettings.ToPage dabei helfen, die Aufgabe zu erledigen.
Der folgende Code demonstriert die Verwendung dieser IronPDF-Funktion.
var printDoc = pdf.GetPrintDocument();
printDoc.PrinterSettings.FromPage = 3;
printDoc.PrinterSettings.ToPage = 3;
var printDoc = pdf.GetPrintDocument();
printDoc.PrinterSettings.FromPage = 3;
printDoc.PrinterSettings.ToPage = 3;
Dim printDoc = pdf.GetPrintDocument()
printDoc.PrinterSettings.FromPage = 3
printDoc.PrinterSettings.ToPage = 3
$vbLabelText $csharpLabel
In der ersten Zeile des Codes wird die Seitenzahl der ersten zu druckenden Seite festgelegt. In der zweiten Zeile wird die letzte zu druckende Seite des Dokuments angegeben.
Eigentum zusammentragen
IronPDF bietet auch fortgeschrittene Druckfunktionen - und "collate" ist eine dieser Funktionen.
Beim Drucken sortieren bedeutet, dass beim Drucken mehrerer Kopien eines mehrseitigen Dokuments alle Seiten der einzelnen Kopien gedruckt werden, bevor die zweite Kopie gedruckt wird. diese Eigenschaft kann je nach Wunsch auf true oder false gesetzt werden.
var printDoc = pdf.GetPrintDocument();
printDoc.PrinterSettings.Collate = false;
var printDoc = pdf.GetPrintDocument();
printDoc.PrinterSettings.Collate = false;
Dim printDoc = pdf.GetPrintDocument()
printDoc.PrinterSettings.Collate = False
$vbLabelText $csharpLabel
Wenn beispielsweise die Eigenschaft collate auf false gesetzt ist, werden alle erforderlichen Kopien der angegebenen Seite gedruckt, bevor die nächste Seite gedruckt wird. Mit anderen Worten, wenn Sie diese Eigenschaft auf false setzen, haben Sie die umgekehrte Funktion der Eigenschaft collate.
Papierquellen erhalten
Es ist auch möglich, die Papierquellen des Druckers abzurufen.
var paperSources = pdf.GetPrintDocument().PrinterSettings.PaperSources;
var paperSources = pdf.GetPrintDocument().PrinterSettings.PaperSources;
Dim paperSources = pdf.GetPrintDocument().PrinterSettings.PaperSources
$vbLabelText $csharpLabel
Schlussfolgerung
IronPDF bietet alle notwendigen Funktionen für die Entwicklung von .NET-Anwendungen, die Druckfunktionen benötigen. Für das Drucken von PDF-Dateien gibt es mehrere Optionen. Verwenden Sie eine der Optionen, die Ihren Anforderungen am besten entspricht, und drucken Sie mehrere PDF-Dateien.
Zusammenfassung
In diesem Tutorial wurde gezeigt, wie man mit der IronPDF-Bibliothek, die für die Entwicklung kostenlos ist und ein hohes Leistungsniveau bietet, auf einfache Weise mit einem bestimmten Drucker in PDF drucken kann. Für mehr Druck-PDF-Funktionen mit IronPDF klicken Sie bitte auf diese Beispielseite.
Es gibt auch viele andere nützliche Bibliotheken wie IronXL für die Arbeit mit Excel-Dokumenten, IronBarcode für die Arbeit mit Strichcodes und IronOCR für die Arbeit mit OCR. Sie können derzeit alle fünf Bibliotheken zum Preis von nur zwei erhalten, indem Sie die komplette Iron Suite erwerben. Bitte besuchen Sie die Lizenzierungsseite für weitere Details.
Chaknith arbeitet an IronXL und IronBarcode. Er hat tiefgehende Expertise in C# und .NET und hilft, die Software zu verbessern und Kunden zu unterstützen. Seine Erkenntnisse aus Benutzerinteraktionen tragen zu besseren Produkten, Dokumentation und einem insgesamt besseren Erlebnis bei.
< PREVIOUS PDF-Druck in VB.NET (Schritt-für-Schritt) Tutorial