Zum Fußzeileninhalt springen
IRONPRINT VERWENDEN

So drucken Sie mit einem Netzwerkdrucker in C#

Das programmgesteuerte Drucken auf Netzwerkdruckern ist eine häufige Aufgabe in verschiedenen Softwareanwendungen. Egal, ob Sie eine Desktop-, mobile Anwendung oder einen Webdienst entwickeln, die Möglichkeit, Dokumente direkt an einen Netzwerkdrucker zu senden, kann die Benutzerfreundlichkeit und Effizienz Ihrer Software erheblich verbessern. In diesem Artikel werden wir untersuchen, wie man mit C# und IronPrint von Iron Software auf einem Netzwerkdrucker druckt.

How to Print with Network Printer in C

  1. Erstellen Sie ein neues Projekt zum Drucken von Dokumenten mit IronPrint.
  2. Installieren Sie IronPrint in ein neues Projekt.
  3. Listen Sie Netzwerdrucker auf, die zum Drucken von Dokumenten verfügbar sind.
  4. Drucken Sie PDF-Dokumente mit IronPrint.
  5. Drucken Sie PDF-Dokumente mit IronPrint mit Dialog.
  6. Erweitertes Drucken mit Druckeinstellungen.

Einrichtung der Umgebung

Bevor wir zum Programmieren übergehen, stellen wir sicher, dass unsere Umgebung korrekt eingerichtet ist. Um auf einem Netzwerkdrucker in C# zu drucken, benötigen Sie Folgendes:

  1. Stellen Sie sicher, dass ein Netzwerkdrucker von dem Computer aus zugänglich ist, auf dem Ihre C#-Anwendung läuft.
  2. Die Netzwerkadresse des Druckers (IP-Adresse oder Netzwerkdruckername).
  3. Notwendige Druckertreiber auf dem Computer installiert.
  4. Administratorrechte, um Drucker oder Treiber bei Bedarf zu installieren.

IronPrint

Bevor wir in die Implementierungsdetails eintauchen, machen wir uns mit dem Einstieg in IronPrint vertraut:

  1. Installation: IronPrint kann einfach über den NuGet -Paketmanager installiert werden. Besuchen Sie einfach die NuGet-Seite und folgen Sie den Installationsanweisungen.
  2. Dokumentation: Eine Kurzanleitung und eine umfassende API-Referenz finden Sie in der offiziellen Dokumentation .

Kompatibilität und Support: IronPrint bietet umfassende Kompatibilität und Unterstützung in verschiedenen Umgebungen und Projekttypen:

  • .NET Versionsunterstützung: IronPrint unterstützt C#, VB .NET und F#, einschließlich .NET 8, 7, 6, 5 und Core 3.1+.
  • Betriebssysteme und Umgebungen: IronPrint ist kompatibel mit Windows (7+), macOS (10+), iOS (11+) und Android API 21+ (v5 "Lollipop").
  • Projekttypen: Egal ob Sie mobile (Xamarin, MAUI, Avalonia), Desktop- (WPF, MAUI, Windows Avalonia) oder Konsolenanwendungen entwickeln, IronPrint bietet Ihnen die passende Lösung.

Schauen wir uns nun an, wie man mit IronPrint druckt, anhand des folgenden Beispiels.

using IronPrint;

namespace IronPrintDemo
{
    class Program
    {
        static void Main(string[] args)
        {
            // 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;

namespace IronPrintDemo
{
    class Program
    {
        static void Main(string[] args)
        {
            // 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);
        }
    }
}
$vbLabelText   $csharpLabel

System.Printing

Der Namespace System.Printing in C# enthält Klassen und Schnittstellen, die es Entwicklern ermöglichen, programmatisch mit Druckern, Druckwarteschlangen, Druckservern und Druckaufträgen zu interagieren. Einige wichtige Klassen und Schnittstellen in diesem Namensraum sind:

  1. PrintQueue: Stellt einen Drucker oder ein Druckgerät dar, das mit dem System verbunden ist.
  2. PrintServer: Stellt einen Druckserver im Netzwerk dar.
  3. PrintSystemJobInfo: Liefert Informationen über einen Druckauftrag, wie z. B. dessen Status und Eigenschaften.
  4. PrintTicket: Stellt die Einstellungen für einen Druckauftrag dar, einschließlich Papierformat, Ausrichtung und Druckqualität.

Erste Schritte mit System.Printing: Bevor wir uns mit dem Code beschäftigen, sollten wir sicherstellen, dass wir ein grundlegendes Verständnis davon haben, wie das Drucken mit System.Printing funktioniert:

  1. PrintQueue Auswahl: Sie müssen das PrintQueue Objekt identifizieren, das den Drucker repräsentiert, den Sie zum Drucken verwenden möchten.
  2. PrintTicket Konfiguration: Optional können Sie das Objekt PrintTicket konfigurieren, um Druckeinstellungen wie Papierformat, Ausrichtung und Anzahl der Kopien festzulegen.
  3. Dokumentendruck: Zum Schluss senden Sie das zu druckende Dokument an die ausgewählte Adresse PrintQueue.

Implementierung des Dokumentendrucks mit System.Printing: Gehen wir nun den Prozess des Druckens eines Dokuments mit System.Printing anhand des folgenden Beispiels durch:

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
            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
            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.");
    }
}
$vbLabelText   $csharpLabel

IronPrint vs System.Printing

So drucken Sie mit einem Netzwerkdrucker in C#: Abbildung 1 – Eine Vergleichstabelle zwischen IronPrint und System.Printing

Diese Tabelle bietet 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.

Schritt 1: Erstellen Sie ein neues Projekt zum Drucken von Dokumenten mit IronPrint

Erstellen Sie eine Konsolenanwendung in Visual Studio wie unten gezeigt.

So drucken Sie mit einem Netzwerkdrucker in C#: Abbildung 2 – Erstellen einer Konsolenanwendung

Geben Sie einen Projektnamen und einen Speicherort an.

So drucken Sie mit einem Netzwerkdrucker in C#: Abbildung 3 – Geben Sie einen Projektnamen an

Wählen Sie die .NET-Version aus.

So drucken Sie mit einem Netzwerkdrucker in C#: Abbildung 4 – Wählen Sie die passende .NET Version aus

Nun ist das Projekt erstellt und bereit für weiteres Programmieren.

Schritt 2: Installieren Sie IronPrint in einem neuen Projekt

Installieren Sie IronPrint aus dem Visual Studio Paket-Manager wie unten gezeigt.

So drucken Sie mit einem Netzwerkdrucker in C#: Abbildung 5 – Suchen Sie nach IronPrint über den Visual Studio Package Manager

IronPrint kann auch mit dem folgenden Befehl installiert werden:

Install-Package IronPrint

Schritt 3: Listen Sie Netzwerdrucker auf, die zum Drucken von Dokumenten verfügbar sind

Um die Druckernamen mit IronPrint aufzulisten, verwenden Sie den unten stehenden Code:

using System;
using System.Collections.Generic;
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 System;
using System.Collections.Generic;
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);
            }
        }
    }
}
$vbLabelText   $csharpLabel

Code-Erklärung

  1. Verwenden Sie Printer.GetPrinterNames, um alle verfügbaren Druckertreiber zu erhalten.
  2. Drucken Sie die Namen mit Console.WriteLine.

Ausgabe

So drucken Sie mit einem Netzwerkdrucker in C#: Abbildung 6 - Beispielausgabe der verfügbaren Drucker

Schritt 4: PDF-Dokument mit IronPrint drucken

Verwenden Sie den unten stehenden Code, um das Dokument leise 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");
        }
    }
}
$vbLabelText   $csharpLabel

Nach der Ausführung wird das Dokument der Druckwarteschlange hinzugefügt, wie in der Ausgabe gezeigt.

Ausgabe

So drucken Sie mit einem Netzwerkdrucker in C#: Abbildung 7 – Beispielausgabe, die das Hinzufügen des Dokuments zur Druckwarteschlange zeigt

Schritt 5: PDF-Dokument mit IronPrint mit Dialog drucken

Verwenden Sie den unten stehenden 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");
        }
    }
}
$vbLabelText   $csharpLabel

Code-Erklärung

  1. Mit ShowPrintDialog von IronPrint können wir mit Dialog drucken.
  2. Sobald der Dialog geöffnet ist, wählen Sie den erforderlichen Drucker aus, um das Dokument zu drucken.

Ausgabe

So drucken Sie mit einem Netzwerkdrucker in C#: Abbildung 8 – Wählen Sie den richtigen Drucker aus

Schritt 6: Erweitertes Drucken mit Druckeinstellungen

Das Drucken von Dokumenten mit erweiterten Einstellungen wird in IronPrint unterstützt. Es unterstützt die folgenden Eigenschaften:

  1. PaperSize: Gibt die vom Drucker verwendeten Papierabmessungen an.
  2. PaperOrientation: Definiert die Ausrichtung des Papiers, z. B. Automatisch, Hochformat oder Querformat.
  3. DPI: Legt die gewünschte Druckauflösung in Punkten pro Zoll fest. Der Standardwert ist 300, der allgemein im kommerziellen Druck verwendet wird. Das tatsächliche DPI kann durch die Fähigkeiten des Druckers eingeschränkt sein.
  4. NumberOfCopies: Gibt die Anzahl der identischen Kopien an, die für ein Dokument gedruckt werden sollen.
  5. PrinterName: Gibt den Namen des für Druckaufträge vorgesehenen Druckers an.
  6. PaperMargins: Legt die Ränder für den Druck fest, gemessen in Millimetern.
  7. Grayscale: Ein boolescher Wert, der bestimmt, ob in Graustufen gedruckt werden soll. Der Standardwert ist false.

Betrachten wir nun ein Codebeispiel:

using IronPrint;

namespace IronPrintDemo
{
    public class Program
    {
        public static void Main()
        {
            // Configure custom print settings
            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 settings
            PrintSettings printSettings = new PrintSettings();
            printSettings.Dpi = 150;
            printSettings.NumberOfCopies = 2;
            printSettings.PaperOrientation = PaperOrientation.Portrait;

            // Print the required document
            Printer.Print("sample.pdf", printSettings);
        }
    }
}
$vbLabelText   $csharpLabel

Code-Erklärung

  1. Der Code beginnt mit dem Import des notwendigen Namensraums IronPrint, der die erforderlichen Klassen und Methoden zum Drucken enthält.
  2. Innerhalb des Namespace IronPrintDemo gibt es eine Klasse namens Program, die als public deklariert ist.
  3. Die Main-Methode dient als Einstiegspunkt des Programms.
  4. Innerhalb der Main-Methode:
    • Ein PrintSettings Objekt mit dem Namen printSettings wird instanziiert, um benutzerdefinierte Druckeinstellungen zu konfigurieren.
    • Die Dpi Eigenschaft von printSettings ist auf 150 gesetzt, was einer Druckauflösung von 150 Punkten pro Zoll entspricht.
    • Die Eigenschaft NumberOfCopies von printSettings ist auf 2 gesetzt, was bedeutet, dass zwei identische Kopien des Dokuments gedruckt werden.
    • Die PaperOrientation Eigenschaft von printSettings ist auf PaperOrientation.Portrait gesetzt, was bedeutet, dass das Dokument im Hochformat gedruckt wird.
  5. Schließlich wird die Methode Printer.Print mit den Parametern "sample.pdf" (dem Namen des zu druckenden Dokuments) und printSettings (den benutzerdefinierten Druckeinstellungen) aufgerufen. Diese Methode behandelt den Druckprozess unter Verwendung der angegebenen Einstellungen.

Ausgabe

So drucken Sie mit einem Netzwerkdrucker in C#: Abbildung 9 – Beispielausgabe mit dem PDF-Dokument, das der Druckwarteschlange zum Drucken hinzugefügt wurde

Lizenz

IronPrint von Iron Software ist eine Enterprise-Bibliothek und erfordert eine Lizenz zum Ausführen. Das Hinzufügen eines IronPrint-Lizenzschlüssels macht das Projekt ohne Einschränkungen oder Wasserzeichen live. Kaufen Sie hier eine Lizenz oder melden Sie sich für einen kostenlosen 30-Tage-Testschlüssel hier an.

Sobald der Lizenzschlüssel erhalten wurde, muss der Schlüssel in der appSettings.json-Datei der Anwendung platziert werden.

{
  "IronPrint.License.LicenseKey": "IRONPRINT.KEY"
}

Dies wird Dokumente ohne Einschränkungen und Wasserzeichen drucken.

Abschluss

Zusammenfassend lässt sich sagen, dass IronPrint und System.Printing jeweils ihre Stärken haben und für unterschiedliche Anwendungsfälle geeignet sind. IronPrint bietet eine schlanke und plattformübergreifende Lösung mit Fokus auf Einfachheit und Vielseitigkeit, während System.Printing eine native Integration und feingranulare Steuerung, insbesondere für Windows-basierte Anwendungen, bietet. Entwickler sollten ihre spezifischen Anforderungen und Plattformziele berücksichtigen, wenn sie sich zwischen diesen Druckbibliotheken für ihre C#-Projekte entscheiden.

IronPrint vereinfacht das Drucken von Dokumenten innerhalb von .NET-Anwendungen, indem es eine benutzerfreundliche API und umfangreiche Kompatibilität über verschiedene Plattformen und Projekttypen hinweg bietet. Indem Sie die im Artikel beschriebenen Schritte befolgen, können Sie Druckfunktionen nahtlos in Ihre .NET-Projekte integrieren und deren Benutzerfreundlichkeit und Produktivität steigern. Entdecken Sie die Möglichkeiten mit IronPrint und erschließen Sie eine Welt des effizienten Dokumentendrucks innerhalb Ihrer Anwendungen.

Häufig gestellte Fragen

Wie kann ich mit C# auf einem Netzwerkdrucker drucken?

Sie können IronPrint verwenden, um Dokumente auf einem Netzwerkdrucker in C# zu drucken. Es ermöglicht Ihnen, Dokumente direkt an einen Netzwerkdrucker zu senden mit Methoden, die Druckaufgaben programmgesteuert verwalten.

Was sind die Schritte, um das Drucken auf einem Netzwerkdrucker in C# einzurichten?

Stellen Sie zunächst sicher, dass Sie Zugriff auf einen Netzwerkdrucker und dessen Adresse haben. Installieren Sie die notwendigen Treiber und IronPrint über den NuGet-Paket-Manager. Verwenden Sie dann die Methoden von IronPrint, um Druckaufträge zu verwalten und zu senden.

Wie installiere ich IronPrint in meinem C#-Projekt?

Sie können IronPrint mit dem NuGet-Paket-Manager in Visual Studio installieren oder indem Sie den Befehl Install-Package IronPrint in der Paket-Manager-Konsole ausführen.

Welche .NET-Versionen sind mit IronPrint kompatibel?

IronPrint unterstützt C#, VB.NET und F# und ist kompatibel mit .NET 8, 7, 6, 5 und Core 3.1+.

Kann IronPrint auf verschiedenen Betriebssystemen verwendet werden?

Ja, IronPrint ist kompatibel mit Windows (7+), macOS (10+), iOS (11+) und Android API 21+ (v5 'Lollipop').

Wie vergleicht sich IronPrint mit System.Printing in C#?

IronPrint bietet eine plattformübergreifende Lösung mit einem Fokus auf Einfachheit, während System.Printing native Integration und Kontrolle für Windows-basierte Anwendungen bietet.

Wie kann ich verfügbare Netzwerkdrucker mit IronPrint auflisten?

Sie können die Methode Printer.GetPrinterNames() in IronPrint verwenden, die eine Liste der verfügbaren Druckertreiber zurückgibt.

Welche erweiterten Druckoptionen gibt es mit IronPrint?

IronPrint unterstützt erweiterte Einstellungen einschließlich PaperSize, PaperOrientation, DPI, NumberOfCopies, PrinterName, PaperMargins und Grayscale.

Welche Lizenzierungsoptionen gibt es für IronPrint?

IronPrint-Lizenzen können gekauft werden oder Sie können sich für eine kostenlose 30-Tage-Testversion auf der Iron Software-Website anmelden. Der Lizenzschlüssel wird in der appSettings.json-Datei Ihrer Anwendung platziert.

Welcher Befehl wird verwendet, um IronPrint über die Kommandozeile zu installieren?

Um IronPrint über die Kommandozeile zu installieren, verwenden Sie den Befehl Install-Package IronPrint.

Curtis Chau
Technischer Autor

Curtis Chau hat einen Bachelor-Abschluss in Informatik von der Carleton University und ist spezialisiert auf Frontend-Entwicklung mit Expertise in Node.js, TypeScript, JavaScript und React. Leidenschaftlich widmet er sich der Erstellung intuitiver und ästhetisch ansprechender Benutzerschnittstellen und arbeitet gerne mit modernen Frameworks sowie der Erstellung gut strukturierter, optisch ansprechender ...

Weiterlesen

Iron Support Team

We're online 24 hours, 5 days a week.
Chat
Email
Call Me