Test in einer Live-Umgebung
Test in der Produktion ohne Wasserzeichen.
Funktioniert überall, wo Sie es brauchen.
Programmgesteuertes Drucken auf Netzwerkdruckern ist eine gängige Aufgabe für verschiedene Softwareanwendungen. Unabhängig davon, ob Sie eine Desktop-Anwendung, eine mobile Anwendung oder einen Webdienst erstellen, kann die Möglichkeit, Dokumente direkt an einen Netzwerkdrucker zu senden, die Benutzerfreundlichkeit und Effizienz Ihrer Software erheblich verbessern. In diesem Artikel erfahren Sie, wie Sie mit C# und den folgenden Funktionen auf einem Netzwerkdrucker drucken könnenIronPrint vonIron Software.
Erstellen Sie ein neues Projekt zum Drucken von Dokumenten mitIronPrint.
Installieren SieIronPrint zu einem neuen Projekt.
Liste der Netzwerkdrucker, die zum Drucken von Dokumenten zur Verfügung stehen.
Drucken von PDF-Dokumenten mitIronPrint.
Drucken von PDF-Dokumenten mitIronPrint mit Dialog.
Bevor wir uns mit der Programmierung befassen, sollten wir sicherstellen, dass unsere Umgebung korrekt eingerichtet ist. Um in C# auf einem Netzwerkdrucker zu drucken, benötigen Sie die folgenden Voraussetzungen:
Stellen Sie sicher, dass ein Netzwerkdrucker von dem Rechner aus zugänglich ist, auf dem Ihre C#-Anwendung ausgeführt wird.
Die Netzwerkadresse des Druckers(IP-Adresse oder Name des Netzwerkdruckers).
Erforderliche Druckertreiber sind auf dem Gerät installiert.
Bevor wir uns mit den Einzelheiten der Implementierung befassen, sollten wir uns mit den ersten Schritten mit IronPrint vertraut machen:
Installation: IronPrint kann einfach über den NuGet Package Manager installiert werden. Besuchen Sie einfach dieNuGet-Seite und folgen Sie den Installationsanweisungen.
Dokumentation: Siehe dieoffizielle Dokumentation für eine Schnellstartanleitung und eine umfassende API-Referenz.
Kompatibilität und Unterstützung: IronPrint bietet umfassende Kompatibilität und Unterstützung für verschiedene Umgebungen und Projekttypen:
Anhand des folgenden Beispiels wollen wir nun sehen, wie man mit IronPrint druckt.
using IronPrint;
// Configure printer setting
PrintSettings printSettings = new PrintSettings();
printSettings.Dpi = 220;
printSettings.NumberOfCopies = 10;
printSettings.PaperOrientation = PaperOrientation.Portrait;
// Print the document
Printer.Print("awesomeIronPrint.pdf", printSettings);
using IronPrint;
// Configure printer setting
PrintSettings printSettings = new PrintSettings();
printSettings.Dpi = 220;
printSettings.NumberOfCopies = 10;
printSettings.PaperOrientation = PaperOrientation.Portrait;
// Print the document
Printer.Print("awesomeIronPrint.pdf", printSettings);
Imports IronPrint
' Configure printer setting
Private printSettings As New PrintSettings()
printSettings.Dpi = 220
printSettings.NumberOfCopies = 10
printSettings.PaperOrientation = PaperOrientation.Portrait
' Print the document
Printer.Print("awesomeIronPrint.pdf", printSettings)
Der Namespace System.Printing
in C# enthält Klassen und Schnittstellen, die es Entwicklern ermöglichen, mit Druckern, Druckwarteschlangen, Druckservern und Druckaufträgen programmatisch zu interagieren. Zu den wichtigsten Klassen und Schnittstellen in diesem Namespace gehören:
druckwarteschlange": Stellt einen Drucker oder ein Druckgerät dar, der/das mit dem System verbunden ist.
druckServer": Stellt einen Druckserver im Netzwerk dar.
druckSystemJobInfo": Liefert Informationen über einen Druckauftrag, z. B. seinen Status und seine Eigenschaften.
druckTicket": Repräsentiert die Einstellungen für einen Druckauftrag, einschließlich Papierformat, Ausrichtung und Druckqualität.
Erste Schritte mit System.Printing
: Bevor wir in den Code eintauchen, wollen wir sicherstellen, dass wir ein grundlegendes Verständnis davon haben, wie das Drucken mit System.Printing
funktioniert:
PrintQueue
-Auswahl: Sie müssen das "PrintQueue"-Objekt identifizieren, das den Drucker darstellt, den Sie zum Drucken verwenden möchten.
PrintTicket
-Konfiguration: Optional können Sie das PrintTicket
-Objekt konfigurieren, um Druckeinstellungen wie Papierformat, Ausrichtung und Anzahl der Kopien festzulegen.
Dokumenten-Druck: Schließlich senden Sie das zu druckende Dokument an die ausgewählte "Druckwarteschlange".
Implementierung des Dokumentendrucks mit System.Printing
: Lassen Sie uns nun anhand des folgenden Beispiels den Prozess des Druckens eines Dokuments mit System.Printing
durchgehen:
Hier ist der Quellcode:
using System;
using System.IO;
using System.Printing;
class Program
{
static void Main(string[] args)
{
// Specify the path to the document to be printed on the local printer
string documentPath = "path/to/your/document.pdf";
// Instantiate a Printer Server object representing the local print server
using (PrintServer printServer = new PrintServer())
{
// Get the default PrintQueue from the PrintServer default
PrintQueue defaultPrintQueue = printServer.DefaultPrintQueue;
// Create a PrintTicket object to specify print settings (optional)
PrintTicket printTicket = new PrintTicket();
// Configure print settings, e.g., number of copies, paper size, orientation
printTicket.CopyCount = 1;
// Print the document to the default PrintQueue with the specified PrintTicket
defaultPrintQueue.AddJob("MyPrintJob", documentPath, false, printTicket);
}
Console.WriteLine("Document sent to print queue.");
}
}
using System;
using System.IO;
using System.Printing;
class Program
{
static void Main(string[] args)
{
// Specify the path to the document to be printed on the local printer
string documentPath = "path/to/your/document.pdf";
// Instantiate a Printer Server object representing the local print server
using (PrintServer printServer = new PrintServer())
{
// Get the default PrintQueue from the PrintServer default
PrintQueue defaultPrintQueue = printServer.DefaultPrintQueue;
// Create a PrintTicket object to specify print settings (optional)
PrintTicket printTicket = new PrintTicket();
// Configure print settings, e.g., number of copies, paper size, orientation
printTicket.CopyCount = 1;
// Print the document to the default PrintQueue with the specified PrintTicket
defaultPrintQueue.AddJob("MyPrintJob", documentPath, false, printTicket);
}
Console.WriteLine("Document sent to print queue.");
}
}
Imports System
Imports System.IO
Imports System.Printing
Friend Class Program
Shared Sub Main(ByVal args() As String)
' Specify the path to the document to be printed on the local printer
Dim documentPath As String = "path/to/your/document.pdf"
' Instantiate a Printer Server object representing the local print server
Using printServer As New PrintServer()
' Get the default PrintQueue from the PrintServer default
Dim defaultPrintQueue As PrintQueue = printServer.DefaultPrintQueue
' Create a PrintTicket object to specify print settings (optional)
Dim printTicket As New PrintTicket()
' Configure print settings, e.g., number of copies, paper size, orientation
printTicket.CopyCount = 1
' Print the document to the default PrintQueue with the specified PrintTicket
defaultPrintQueue.AddJob("MyPrintJob", documentPath, False, printTicket)
End Using
Console.WriteLine("Document sent to print queue.")
End Sub
End Class
System.Printing
Diese Tabelle gibt einen schnellen Überblick über die Funktionen und Eigenschaften von IronPrint und System.Printing
und hilft Entwicklern, fundierte Entscheidungen auf der Grundlage ihrer spezifischen Anforderungen und Plattformziele zu treffen.
Erstellen Sie eine Konsolenanwendung in Visual Studio wie unten gezeigt.
Geben Sie einen Projektnamen und den Standort an.
Wählen Sie die .NET-Version aus.
Jetzt ist das Projekt erstellt und bereit für die weitere Codierung.
Installieren Sie IronPrint über den Visual Studio Package Manager wie unten gezeigt.
IronPrint kann auch mit dem unten stehenden Befehl installiert werden:
Install-Package IronPrint
Um die Druckernamen mit IronPrint aufzulisten, verwenden Sie den folgenden Code:
using IronPrint;
namespace IronPrintDemo;
public class Program
{
public static void Main()
{
// Get printer names using printer drivers
List<string> printersName = Printer.GetPrinterNames();
foreach (var printer in printersName)
{
Console.WriteLine(printer);
}
}
}
using IronPrint;
namespace IronPrintDemo;
public class Program
{
public static void Main()
{
// Get printer names using printer drivers
List<string> printersName = Printer.GetPrinterNames();
foreach (var printer in printersName)
{
Console.WriteLine(printer);
}
}
}
Imports IronPrint
Namespace IronPrintDemo
Public Class Program
Public Shared Sub Main()
' Get printer names using printer drivers
Dim printersName As List(Of String) = Printer.GetPrinterNames()
For Each printer In printersName
Console.WriteLine(printer)
Next printer
End Sub
End Class
End Namespace
Verwenden Sie Printer.GetPrinterNames
, um alle verfügbaren Druckertreiber zu ermitteln.
Console.WriteLine
.Verwenden Sie den nachstehenden Code, um das Dokument geräuschlos zu drucken:
using IronPrint;
namespace IronPrintDemo;
public class Program
{
public static void Main()
{
// Print the document silently
Printer.Print("sample.pdf");
}
}
using IronPrint;
namespace IronPrintDemo;
public class Program
{
public static void Main()
{
// Print the document silently
Printer.Print("sample.pdf");
}
}
Imports IronPrint
Namespace IronPrintDemo
Public Class Program
Public Shared Sub Main()
' Print the document silently
Printer.Print("sample.pdf")
End Sub
End Class
End Namespace
Nach der Ausführung wird das Dokument, wie in der Ausgabe gezeigt, der Druckwarteschlange hinzugefügt.
Verwenden Sie den folgenden Code, um das Dokument mit dem Dialog zu drucken:
using IronPrint;
namespace IronPrintDemo;
public class Program
{
public static void Main()
{
// Print with Dialog
Printer.ShowPrintDialog("sample.pdf");
}
}
using IronPrint;
namespace IronPrintDemo;
public class Program
{
public static void Main()
{
// Print with Dialog
Printer.ShowPrintDialog("sample.pdf");
}
}
Imports IronPrint
Namespace IronPrintDemo
Public Class Program
Public Shared Sub Main()
' Print with Dialog
Printer.ShowPrintDialog("sample.pdf")
End Sub
End Class
End Namespace
Mit ShowPrintDialog
von IronPrint können wir mit Dialog drucken
Das Drucken von Dokumenten mit erweiterten Einstellungen wird in IronPrint unterstützt. Es unterstützt die folgenden Eigenschaften:
PaperSize
: Gibt die vom Drucker verwendeten Papiermaße an.
PaperOrientation
: Legt die Ausrichtung des Papiers fest, z. B. Automatisch, Hoch- oder Querformat.
DPI
: Legt die gewünschte Druckauflösung in Dots per Inch fest. Der Standardwert ist 300, der üblicherweise im kommerziellen Druck verwendet wird. Der tatsächliche DPI-Wert kann durch die Möglichkeiten des Druckers eingeschränkt sein.
NumberOfCopies
: Gibt die Anzahl der identischen Kopien an, die für ein Dokument gedruckt werden sollen.
Druckername
: Gibt den Namen des für die Druckaufgaben vorgesehenen Druckers an.
PaperMargins
: Bestimmt die Ränder für den Druck, gemessen in Millimetern.
Graustufen
: Ein boolescher Wert, der bestimmt, ob in Graustufen gedruckt werden soll. Der Standardwert ist false.
Schauen wir uns nun ein Codebeispiel an:
using IronPrint;
namespace IronPrintDemo;
public class Program
{
public static void Main()
{
// Configure custom print setting
PrintSettings printSettings = new PrintSettings();
printSettings.Dpi = 150;
printSettings.NumberOfCopies = 2;
printSettings.PaperOrientation = PaperOrientation.Portrait;
// Print the required document
Printer.Print("sample.pdf", printSettings);
}
}
using IronPrint;
namespace IronPrintDemo;
public class Program
{
public static void Main()
{
// Configure custom print setting
PrintSettings printSettings = new PrintSettings();
printSettings.Dpi = 150;
printSettings.NumberOfCopies = 2;
printSettings.PaperOrientation = PaperOrientation.Portrait;
// Print the required document
Printer.Print("sample.pdf", printSettings);
}
}
Imports IronPrint
Namespace IronPrintDemo
Public Class Program
Public Shared Sub Main()
' Configure custom print setting
Dim printSettings As New PrintSettings()
printSettings.Dpi = 150
printSettings.NumberOfCopies = 2
printSettings.PaperOrientation = PaperOrientation.Portrait
' Print the required document
Printer.Print("sample.pdf", printSettings)
End Sub
End Class
End Namespace
Der Code beginnt mit dem Import des erforderlichen Namespace IronPrint, der vermutlich die erforderlichen Klassen und Methoden zum Drucken enthält.
Im Namespace "IronPrintDemo" gibt es eine Klasse namens Program, die als public deklariert ist.
Die Main-Methode dient als Einstiegspunkt in das Programm.
Innerhalb der Methode Main:
Ein PrintSettings
-Objekt namens printSettings
wird instanziiert, um benutzerdefinierte Druckeinstellungen zu konfigurieren.
Die Dpi-Eigenschaft von printSettings
ist auf 150 gesetzt, was eine Druckauflösung von 150 Punkten pro Zoll angibt.
Die Eigenschaft NumberOfCopies
von printSettings
wird auf 2 gesetzt, wodurch festgelegt wird, dass zwei identische Kopien des Dokuments gedruckt werden.
PaperOrientation
von printSettings
wird auf PaperOrientation.Portrait
gesetzt, was bedeutet, dass das Dokument im Hochformat gedruckt wird.printSettings
(die benutzerdefinierten Druckeinstellungen). Bei dieser Methode wird der Druckvorgang vermutlich unter Verwendung der angegebenen Einstellungen durchgeführt.IronPrint vonIron Software ist eine Unternehmensbibliothek und erfordert eine Lizenz für die Ausführung. Durch Hinzufügen eines IronPrint-Lizenzschlüssels wird das Projekt ohne Einschränkungen oder Wasserzeichen aktiviert. Kaufen Sie hier eine Lizenz oder melden Sie sich für einen kostenlosen 30-Tage-Testschlüssel anhier.
Sobald der Lizenzschlüssel erhalten wurde, muss er in der Datei appSettings.json in der Anwendung platziert werden
{
"IronPrint.License.LicenseKey": "IRONPRINT.KEY"
}
Damit können Sie Dokumente ohne Einschränkungen und Wasserzeichen drucken.
Zusammenfassend lässt sich sagen, dass IronPrint und System.Printing
jeweils ihre Stärken haben und für unterschiedliche Szenarien geeignet sind. IronPrint bietet eine schlanke und plattformübergreifende Lösung mit dem Schwerpunkt auf Einfachheit und Vielseitigkeit, während System.Printing
native Integration und feinkörnige Kontrolle bietet, insbesondere für Windows-basierte Anwendungen. Entwickler sollten bei der Wahl zwischen diesen Druckbibliotheken für ihre C#-Projekte ihre spezifischen Anforderungen und Plattformziele berücksichtigen.
IronPrint vereinfacht den Dokumentendruck innerhalb von .NET-Anwendungen, indem es eine benutzerfreundliche API und umfassende Kompatibilität über verschiedene Plattformen und Projekttypen hinweg bietet. Wenn Sie die in diesem Artikel beschriebenen Schritte befolgen, können Sie die Druckfunktionalität nahtlos in Ihre .NET-Projekte integrieren und deren Benutzerfreundlichkeit und Produktivität verbessern. Entdecken Sie die Möglichkeiten von IronPrint und erschließen Sie sich eine Welt des effizienten Dokumentendrucks innerhalb Ihrer Anwendungen.
9 .NET API-Produkte für Ihre Bürodokumente