Test dans un environnement réel
Test en production sans filigrane.
Fonctionne partout où vous en avez besoin.
L'impression programmée sur des imprimantes de réseau est une tâche commune à plusieurs applications logicielles. Que vous créiez un ordinateur de bureau, une application mobile ou un service web, la possibilité d'envoyer des documents directement à une imprimante réseau peut considérablement améliorer la convivialité et l'efficacité de votre logiciel. Dans cet article, nous verrons comment imprimer sur une imprimante réseau à l'aide de C# et deIronPrint deIron Software.
Créer un nouveau projet pour l'impression de documents à l'aide deIronPrint.
InstallerIronPrint à un nouveau projet.
Liste des imprimantes réseau disponibles pour l'impression de documents.
Imprimer des documents PDF à l'aide deIronPrint.
Imprimer des documents PDF à l'aide deIronPrint avec Dialog.
Avant d'entrer dans la partie codage, assurons-nous que notre environnement est correctement configuré. Pour imprimer sur une imprimante réseau en C#, vous devez disposer des éléments suivants :
Assurez-vous qu'une imprimante réseau est accessible à partir de la machine où votre application C# sera exécutée.
L'adresse réseau de l'imprimante(Adresse IP ou nom de l'imprimante réseau).
Pilote(s) d'imprimante nécessaire(s) installé(s) sur la machine.
Avant de plonger dans les détails de la mise en œuvre, familiarisons-nous avec la manière de démarrer avec IronPrint :
Installation : IronPrint peut être facilement installé via NuGet Package Manager. Il suffit de se rendre sur le sitePage NuGet et suivre les instructions d'installation.
Documentation : Se référer à ladocumentation officielle pour obtenir un guide de démarrage rapide et une référence API complète.
Compatibilité et assistance : IronPrint offre une compatibilité et une assistance étendues dans divers environnements et types de projets :
Voyons maintenant comment imprimer avec IronPrint à l'aide de l'exemple suivant.
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)
L'espace de noms System.Printing
en C# contient des classes et des interfaces qui permettent aux développeurs d'interagir avec les imprimantes, les files d'attente d'impression, les serveurs d'impression et les travaux d'impression de manière programmatique. Parmi les classes et interfaces clés de cet espace de noms, on peut citer
PrintQueue
: Représente une imprimante ou un périphérique d'impression connecté au système.
PrintServer
: Représente un serveur d'impression sur le réseau.
PrintSystemJobInfo
: Fournit des informations sur un travail d'impression, telles que son statut et ses propriétés.
PrintTicket
: Représente les paramètres d'un travail d'impression, y compris la taille du papier, l'orientation et la qualité d'impression.
Démarrer avec System.Printing
: Avant de nous plonger dans le code, assurons-nous d'avoir une compréhension de base du fonctionnement de l'impression avec System.Printing
:
Sélection de l'objet PrintQueue
: Vous devez identifier l'objet PrintQueue
représentant l'imprimante que vous souhaitez utiliser pour l'impression.
Configuration de l'objet PrintTicket
: En option, vous pouvez configurer l'objet PrintTicket
pour spécifier les paramètres d'impression tels que la taille du papier, l'orientation et le nombre de copies.
Impression de documents : Enfin, vous envoyez le document à imprimer à la file d'attente d'impression (PrintQueueue
) sélectionnée.
Implémentation de l'impression de documents avec System.Printing
: Voyons maintenant comment imprimer un document à l'aide de System.Printing
dans l'exemple suivant :
Voici le code source :
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
(en anglais)Ce tableau fournit une vue d'ensemble rapide des fonctionnalités et caractéristiques d'IronPrint et de System.Printing
, aidant les développeurs à prendre des décisions éclairées en fonction de leurs exigences spécifiques et de leurs cibles de plate-forme.
Créez une application console dans Visual Studio comme indiqué ci-dessous.
Indiquez le nom et la localisation du projet.
Sélectionnez la version .NET.
Le projet est maintenant créé et prêt à être codé.
Installez IronPrint à partir du gestionnaire de paquets de Visual Studio comme indiqué ci-dessous.
IronPrint peut également être installé à l'aide de la commande ci-dessous :
Install-Package IronPrint
Pour dresser la liste des noms d'imprimantes à l'aide d'IronPrint, utilisez le code ci-dessous :
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
Utilisez Printer.GetPrinterNames
pour obtenir tous les pilotes d'imprimante disponibles.
Console.WriteLine
.Utilisez le code ci-dessous pour imprimer le document en silence :
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
Après l'exécution, le document est ajouté à la file d'attente d'impression, comme le montre la sortie.
Utilisez le code ci-dessous pour imprimer le document avec le dialogue :
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
En utilisant ShowPrintDialog
d'IronPrint nous pouvons imprimer avec Dialog
L'impression de documents avec des paramètres avancés est prise en charge par IronPrint. Il prend en charge les propriétés suivantes :
PaperSize
: Spécifie les dimensions du papier utilisé par l'imprimante.
PaperOrientation
: Définit l'orientation du papier, par exemple Automatique, Portrait ou Paysage.
DPI
: Définit la résolution d'impression souhaitée en points par pouce. La valeur par défaut est 300, couramment utilisée dans l'impression commerciale. Le DPI réel peut être limité par les capacités de l'imprimante.
NombreDeCopies
: Indique le nombre de copies identiques à imprimer pour un document.
PrinterName
: Spécifie le nom de l'imprimante désignée pour les tâches d'impression.
PaperMargins
: Détermine les marges d'impression, mesurées en millimètres.
Grayscale
: Une valeur booléenne déterminant s'il faut imprimer en niveaux de gris. La valeur par défaut est false.
Voyons maintenant un exemple de code :
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
Le code commence par l'importation de l'espace de noms IronPrint, qui contient vraisemblablement les classes et méthodes nécessaires à l'impression.
Dans l'espace de noms IronPrintDemo
, il y a une classe nommée Program déclarée comme publique.
La méthode Main sert de point d'entrée au programme.
Dans la méthode Main :
Un objet PrintSettings
nommé printSettings
est instancié pour configurer les paramètres d'impression personnalisés.
La propriété Dpi de printSettings
est fixée à 150, ce qui indique une résolution d'impression de 150 points par pouce.
La propriété NumberOfCopies
de printSettings
est fixée à 2, spécifiant que deux copies identiques du document seront imprimées.
PaperOrientation
de printSettings
est fixée à PaperOrientation.Portrait
, indiquant que le document sera imprimé en orientation portrait.printSettings
(les paramètres d'impression personnalisés). Cette méthode gère vraisemblablement le processus d'impression en utilisant les paramètres spécifiés.IronPrint deIron Software est une bibliothèque d'entreprise et nécessite une licence pour fonctionner. L'ajout d'une clé de licence IronPrint permet au projet de vivre sans restrictions ni filigranes. Acheter une licence ici ou s'inscrire pour une clé d'essai gratuite de 30 joursici.
Une fois la clé de licence obtenue, elle doit être placée dans le fichier appSettings.json de l'application
{
"IronPrint.License.LicenseKey": "IRONPRINT.KEY"
}
Cette fonction permet d'imprimer des documents sans restrictions ni filigranes.
En résumé, IronPrint et System.Printing
ont chacun leurs points forts et conviennent à différents scénarios. IronPrint offre une solution rationalisée et multiplateforme axée sur la simplicité et la polyvalence, tandis que System.Printing
offre une intégration native et un contrôle fin, en particulier pour les applications basées sur Windows. Les développeurs doivent tenir compte de leurs exigences spécifiques et de leurs plates-formes cibles lorsqu'ils choisissent entre ces bibliothèques d'impression pour leurs projets C#.
IronPrint simplifie l'impression de documents au sein des applications .NET en fournissant une API conviviale et une compatibilité étendue entre diverses plates-formes et divers types de projets. En suivant les étapes décrites dans cet article, vous pouvez intégrer de manière transparente la fonctionnalité d'impression dans vos projets .NET, améliorant ainsi leur convivialité et leur productivité. Explorez les possibilités offertes par IronPrint et accédez à un monde d'impression de documents efficace au sein de vos applications.
9 produits de l'API .NET pour vos documents de bureau