C# Imprimer le PDF vers une imprimante spécifique (Tutoriel d'exemple de code)
Chaknith Bin
septembre 1, 2022
Partager:
IronPrint est la toute nouvelle bibliothèque d'impression .NET de Iron Software, offrant une compatibilité sur une large gamme de plateformes, y compris Windows, macOS, Android et iOS. Commencez avec IronPrint dès maintenant !
Dans de nombreux cas, les développeurs peuvent avoir besoin d'imprimer des documents PDF directement à partir de leur application. Cette tâche peut parfois sembler compliquée lorsque l'utilisateur souhaite imprimer plusieurs fichiers PDF ou utiliser un nom d'imprimante spécifique autre que l'imprimante par défaut. Aujourd'hui, il existe de nombreuses méthodes qui peuvent nous aider à imprimer des fichiers PDF. Certains d'entre eux sont payants, d'autres ont des performances irrégulières et d'autres encore sont difficiles à mettre en œuvre.
IronPDF est un programme .NET qui fournit un ensemble de classes pouvant être utilisées pour créer des fichiers PDF de manière programmatique. Ces classes se trouvent dans l'ensemble IronPDF.Core et sont conçues pour être faciles à utiliser avec n'importe quel langage .NET, y compris C#, VB.NET, F#, etc. La bibliothèque offre de nombreuses fonctions pour la création de documents PDF, la manipulation de PDF existants, la lecture de PDF, l'impression de PDF et la création programmatique de formulaires PDF.
Voyons quelques exemples de code pour l'impression d'un fichier PDF.
Comment imprimer un PDF vers une imprimante spécifique en C#
Rendre un nouveau document PDF ou charger un document existant avec C#
Utilisez la classe PrintDoc pour configurer l'imprimante PDF
Imprimer depuis une imprimante spécifique en définissant la propriété PrinterName
Exécutez la méthode Print pour imprimer avec le DPI par défaut ou un DPI personnalisé
Installer IronPDF
Tout d'abord, installez la bibliothèque IronPDF. Pour cela, allez dans la console du gestionnaire de paquets et écrivez la commande suivante.
Install-Package IronPrint
Installez le package via la console du gestionnaire de packages
L'étape suivante consiste à créer un document PDF. Vous pouvez également charger un document PDF existant si vous ne souhaitez pas en créer un nouveau. Créons un document PDF.
Créer un document PDF à l'aide d'une URL
Créons un document PDF à l'aide d'une URL. IronPDF propose deux fonctions à cet effet. RenderUrlAsPdf et RenderUrlAsPdfAsync. Les deux fonctions ont la même fonctionnalité, sauf que RenderUrlAsPdfAsync fournit une fonctionnalité asynchrone.
L'extrait de code suivant créera un fichier PDF à partir de l'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
Créer un document PDF à l'aide d'une chaîne HTML
Il est également possible de créer un document PDF à partir d'une chaîne HTML. IronPDF propose deux méthodes pour créer un fichier PDF en utilisant une chaîne HTML : RenderHtmlAsPdf et RenderHtmlAsPdfAsync. Ces méthodes sont similaires entre elles, la seule différence étant que RenderHtmlAsPdfAsync est utilisé pour les opérations asynchrones.
L'extrait de code suivant créera un fichier PDF à partir du code HTML.
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
Imprimer des fichiers PDF sur une imprimante spécifique
Il existe de nombreux cas où il est nécessaire d'imprimer des fichiers PDF à l'aide d'une imprimante spécifique. Cette tâche peut être effectuée simplement en utilisant la propriété PrinterSettings.PrinterName. Définissez le nom de votre imprimante dans cette propriété. Voyons rapidement comment imprimer des documents PDF sur une imprimante spécifique en C#.
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
Le pdf fait référence à un fichier PDF qui vient d'être créé à partir de l'URL.
GetPrintDocument Renvoie un PrintDocument pour le PDF permettant un contrôle granulaire lors de l'envoi du PDF à une imprimante.
Ensuite, un nom d'imprimante peut être spécifié si nécessaire.
Imprimer le dialogue
Supposons que l'utilisateur doive sélectionner tous les paramètres de l'imprimante à l'aide de l'interface utilisateur telle qu'elle apparaît dans un document Word ou Adobe Acrobat. Les capacités d'IronPDF peuvent afficher la boîte de dialogue d'impression GUI à l'utilisateur en passant un seul paramètre à la fonction Print comme indiqué ci-dessous.
pdf.Print(true);
pdf.Print(true);
pdf.Print(True)
$vbLabelText $csharpLabel
Il suffit de passer la valeur vraie à l'argument de la fonction Print car celui-ci est faux par défaut. Elle montre à quel point il est facile d'afficher le dialogue d'impression de l'interface graphique. La fonction pdf.Print() imprime sur une imprimante par défaut.
Spécifier le nombre de copies
Dans le cas où il est nécessaire d'imprimer plusieurs copies d'un même document. Cela peut être facilement réalisé en définissant la propriété PrinterSettings.Copies. L'exemple de code suivant le démontre.
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
Ici, pdf est un objet document d'impression actuel.
Sélectionner la plage de pages pour imprimer le fichier PDF
Il arrive souvent que les utilisateurs ne veuillent pas imprimer un document complet. Dans de tels cas, spécifier la propriété PrinterSettings.FromPagePrinterSettings.ToPage aidera à accomplir la tâche.
Le code suivant illustre l'utilisation de cette fonctionnalité d'IronPDF.
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
La première ligne de code définit le numéro de la première page à imprimer. La deuxième ligne définit la dernière page du document à imprimer.
Collationner les biens
IronPDF propose également des fonctions d'impression avancées, dont la fonction "assemblage".
Assembler lors de l'impression signifie que si vous imprimez plus d'une copie d'un document de plusieurs pages, les copies imprimeront toutes les pages de chaque copie avant d'imprimer la deuxième copie. cette propriété peut être définie comme true ou false selon notre choix.
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
Par exemple, si la propriété collate est définie sur false, elle imprimera toutes les copies requises de la page donnée avant d'imprimer la suivante. En d'autres termes, en définissant cette propriété sur false, on obtient la fonction inverse de la propriété collate.
Obtenir des sources de papier
Il est également possible d'obtenir les sources de papier de l'imprimante.
var paperSources = pdf.GetPrintDocument().PrinterSettings.PaperSources;
var paperSources = pdf.GetPrintDocument().PrinterSettings.PaperSources;
Dim paperSources = pdf.GetPrintDocument().PrinterSettings.PaperSources
$vbLabelText $csharpLabel
Conclusion
IronPDF offre toutes les caractéristiques nécessaires au développement d'applications .NET qui requièrent des fonctionnalités d'impression. De nombreuses options sont disponibles pour l'impression des fichiers PDF. Utilisez les choix qui correspondent le mieux à vos besoins et vous pouvez également imprimer plusieurs fichiers PDF.
Résumé
Ce tutoriel a démontré comment imprimer au format PDF de manière directe à l'aide d'une imprimante spécifique en utilisant la bibliothèque IronPDF - elle est gratuite pour le développement et offre des niveaux de performance élevés. Pour plus de fonctionnalités d'impression PDF avec IronPDF, veuillez cliquer sur cette page d'exemple.
Il existe également d'autres bibliothèques utiles telles qu'IronXL pour travailler avec des documents Excel, IronBarcode pour travailler avec des codes-barres et IronOCR pour travailler avec l'OCR. Vous pouvez actuellement obtenir les cinq bibliothèques pour le prix de seulement deux en achetant la suite complète Iron Suite. Veuillez visiter la page de licences pour plus de détails.
Chaknith travaille sur IronXL et IronBarcode. Il possède une expertise approfondie en C# et .NET, aidant à améliorer le logiciel et à soutenir les clients. Ses idées issues des interactions avec les utilisateurs contribuent à de meilleurs produits, une documentation améliorée et une expérience globale enrichie.
< PRÉCÉDENT Comment imprimer un PDF en VB.NET (pas à pas) Tutoriel
SUIVANT > Comment imprimer un fichier PDF sans boîte de dialogue en C#
Des millions d'ingénieurs dans le monde entier lui font confiance
Réservez une démo en direct gratuite
Réservez une démonstration personnelle de 30 minutes.
Pas de contrat, pas de détails de carte, pas d'engagements.
Voici ce à quoi vous pouvez vous attendre :
Une démonstration en direct de notre produit et de ses principales fonctionnalités
Obtenez des recommandations de fonctionnalités spécifiques au projet
Toutes vos questions trouvent réponse pour vous assurer de disposer de toutes les informations dont vous avez besoin. (Aucun engagement de votre part.)
CHOISIR L'HEURE
VOS INFORMATIONS
Réservez votre démo en direct gratuite
Fiable par plus de 2 millions d'ingénieurs dans le monde entier