Passer au contenu du pied de page
UTILISATION DE IRONPRINT

C# Envoyer PDF à l'imprimante (Tutoriel étape par étape)

PDF signifie " Portable Document Format ". Il existe de nombreux scénarios dans lesquels un développeur a besoin d'imprimer des fichiers PDF par programmation dans une application. En C#, cela peut être une tâche très fastidieuse, mais grâce à IronPDF, c'est devenu très facile à faire en quelques lignes de code seulement. Cet outil nous permet d'imprimer des documents PDF avec les paramètres d'impression par défaut ainsi qu'avec des options d'impression personnalisées. Dans ce tutoriel, vous apprendrez à imprimer des fichiers PDF en utilisant le langage C#.

Sujets abordés dans ce tutoriel

Les sujets suivants seront abordés ici :

  • La bibliothèque IronPDF
  • Création d'un projet console C#
  • Installation d'IronPDF
    1. Gestionnaire de packages NuGet
    2. Console du gestionnaire de packages NuGet
    3. Utilisation des fichiers DLL
  • Ajout de l'espace de noms IronPDF
  • Impression de documents PDF
    1. Créer un document PDF et imprimer des PDF
    2. Créez un document PDF à partir d'URL et imprimez-le.
    3. Impression avancée
  • Résumé

IronPDF

IronPDF est une bibliothèque PDF pour le framework .NET qui permet aux développeurs de créer facilement des fichiers PDF. Le rendu d'IronPDF est " au pixel près " pour les versions de bureau de Google Chrome. IronPDF crée facilement des documents PDF en utilisant une seule ligne de code. Il peut traiter les documents PDF sans Acrobat Reader ni autres visionneuses PDF.

IronPDF peut être utilisé pour créer des fichiers PDF à partir de chaînes HTML, de fichiers HTML ou d'URL. Ensuite, il peut envoyer ces fichiers à une imprimante par défaut pour impression.

A free trial of IronPDF is available.

Quelques fonctionnalités importantes de la bibliothèque IronPDF

  • Créez des documents PDF à partir de HTML 4 et 5, CSS et JavaScript
  • Générer des documents PDF à partir d'URL
  • Imprimer un PDF sur une imprimante physique par défaut
  • Configurer les paramètres d'impression (pour imprimer des pages spécifiques, etc.)
  • Charger les URL avec des identifiants de connexion réseau personnalisés, des agents utilisateurs, des proxys, des cookies, des en-têtes HTTP et des champs ou variables de formulaire, permettant ainsi l'accès aux pages Web protégées par des formulaires de connexion HTML.
  • Lire et remplir les champs de formulaire PDF (Portable Document Format)
  • Extraire les images et les textes des fichiers PDF
  • Signer numériquement des documents PDF
  • Aucune bibliothèque tierce requise

1. Créer un projet C

Ce tutoriel utilisera Visual Studio 2022, mais vous pouvez également utiliser des versions antérieures.

  • Ouvrez Visual Studio 2022.
  • Créez un nouveau projet console C# .NET. Sélectionnez l'application console .NET Core.
How to Send PDFs to Printer Using C#, Figure 1: Application Console

Application Console

  • Donnez un nom au projet, par exemple, DemoApp.
  • Le framework .NET 6.0 est la version la plus récente et la plus stable que nous allons utiliser. Cliquez sur le bouton "Créer".
How to Send PDFs to Printer Using C#, Figure 2: .NET Framework

.NET Framework

2. Installer la bibliothèque IronPDF

Pour installer la bibliothèque IronPDF, nous pouvons utiliser l'une des méthodes énumérées ci-dessous :

2.1. Gestionnaire de packages NuGet

Nous pouvons installer la bibliothèque IronPDF C# .NET Core à partir du gestionnaire de packages NuGet.

Ouvrez le Gestionnaire de packages en cliquant sur Outils > Gestionnaire de packages NuGet > Gérer les packages NuGet pour la solution .

How to Send PDFs to Printer Using C#, Figure 3: Gestionnaire de paquets

Gestionnaire de paquets

Vous pouvez également cliquer avec le bouton droit sur le projet dans l'Explorateur de solutions et cliquer sur Gérer les packages NuGet.

How to Send PDFs to Printer Using C#, Figure 4: Gestionnaire de packages NuGet - Explorateur de solutions

Gestionnaire de packages NuGet - Explorateur de solutions

Rechercher IronPDF. Sélectionnez IronPDF et cliquez sur Installer. La bibliothèque commencera à s'installer.

How to Send PDFs to Printer Using C#, Figure 5: Installer IronPDF

Installer IronPDF

2.2. Console du gestionnaire de packages NuGet

Ouvrez la console du gestionnaire de packages NuGet en cliquant sur Outils > Gestionnaire de packages NuGet > Console du gestionnaire de packages.

Saisissez la commande suivante dans la ligne de commande :

Install-Package IronPrint
How to Send PDFs to PRinter Using C#, Figure 6: NuGet Console du gestionnaire de paquets

Console du gestionnaire de paquets

2.3. Utilisation d'un fichier DLL

Une autre façon d'utiliser IronPDF dans votre projet consiste à ajouter un fichier DLL de la bibliothèque IronPDF. Vous pouvez télécharger le fichier DLL à partir de ce lien .

  • Téléchargez le fichier zip DLL. Extrayez-le dans un dossier spécifique.
  • Ouvrez un projet dans Visual Studio. Dans l'Explorateur de solutions, cliquez avec le bouton droit sur " Références " et recherchez le fichier DLL IronPDF.

2.4. Ajouter l'espace de noms IronPDF

Une fois l'installation terminée, ajoutez les espaces de noms IronPDF et System.Drawing à votre fichier programme.

using IronPdf;
using System.Drawing;
using IronPdf;
using System.Drawing;
Imports IronPdf
Imports System.Drawing
$vbLabelText   $csharpLabel

Remarque : vous devez ajouter ces références à chaque fichier dans lequel vous souhaitez utiliser les fonctionnalités d'IronPDF.

IronPDF est installé et prêt à l'emploi ! Nous pouvons maintenant créer notre premier document PDF pour nos applications .NET Core et l'envoyer à l'imprimante par défaut pour impression. Voyons-en quelques-unes ci-dessous à l'aide d'exemples de code.

3. Impression de documents PDF

3.1. Créer et imprimer un document PDF à partir de HTML

Il est très facile de traiter les chaînes HTML et de les convertir au format PDF. Ce fichier nouvellement créé peut ensuite être imprimé à l'aide d'IronPDF. Voici le code qui permet de créer facilement des fichiers PDF.

// Create an instance of ChromePdfRenderer
var chromePdfRenderer = new IronPdf.ChromePdfRenderer();

// Render any HTML fragment to a PDF document
using var pdfDocument = chromePdfRenderer.RenderHtmlAsPdf("<h1>Hello IronPdf</h1><p>This tutorial will help to print this text to a PDF file.</p>");

// Send the PDF to the default printer
pdfDocument.Print();

// Create a PrintDocument object that can be used for further configurations
System.Drawing.Printing.PrintDocument printDocument = pdfDocument.GetPrintDocument();
// Create an instance of ChromePdfRenderer
var chromePdfRenderer = new IronPdf.ChromePdfRenderer();

// Render any HTML fragment to a PDF document
using var pdfDocument = chromePdfRenderer.RenderHtmlAsPdf("<h1>Hello IronPdf</h1><p>This tutorial will help to print this text to a PDF file.</p>");

// Send the PDF to the default printer
pdfDocument.Print();

// Create a PrintDocument object that can be used for further configurations
System.Drawing.Printing.PrintDocument printDocument = pdfDocument.GetPrintDocument();
' Create an instance of ChromePdfRenderer
Dim chromePdfRenderer = New IronPdf.ChromePdfRenderer()

' Render any HTML fragment to a PDF document
Dim pdfDocument = chromePdfRenderer.RenderHtmlAsPdf("<h1>Hello IronPdf</h1><p>This tutorial will help to print this text to a PDF file.</p>")

' Send the PDF to the default printer
pdfDocument.Print()

' Create a PrintDocument object that can be used for further configurations
Dim printDocument As System.Drawing.Printing.PrintDocument = pdfDocument.GetPrintDocument()
$vbLabelText   $csharpLabel

Ce code créera un fichier PDF à partir du contenu HTML transmis à la fonction RenderHtmlAsPdf . Cette fonction effectue la conversion de fragments HTML en un document PDF.

Vous devez connaître les balises HTML pour générer des fichiers PDF ou des pages PDF à l'aide de la bibliothèque IronPDF. Nous utilisons la fonction Print pour envoyer le fichier PDF généré à l'imprimante. La boîte de dialogue de l'imprimante s'affichera, vous permettant de confirmer la tâche d'impression.

3.2. Créer et imprimer un document PDF à partir d'une URL

Vous pouvez également créer des documents PDF à partir d'une URL :

// Create an instance of ChromePdfRenderer
var chromePdfRenderer = new IronPdf.ChromePdfRenderer();

// Render a PDF from a URL
var pdfDocument = chromePdfRenderer.RenderUrlAsPdf("https://ironpdf.com/");

// Send the PDF to the default printer
pdfDocument.Print();

// Create a PrintDocument object that can be used for further configurations
System.Drawing.Printing.PrintDocument printDocument = pdfDocument.GetPrintDocument();
// Create an instance of ChromePdfRenderer
var chromePdfRenderer = new IronPdf.ChromePdfRenderer();

// Render a PDF from a URL
var pdfDocument = chromePdfRenderer.RenderUrlAsPdf("https://ironpdf.com/");

// Send the PDF to the default printer
pdfDocument.Print();

// Create a PrintDocument object that can be used for further configurations
System.Drawing.Printing.PrintDocument printDocument = pdfDocument.GetPrintDocument();
' Create an instance of ChromePdfRenderer
Dim chromePdfRenderer = New IronPdf.ChromePdfRenderer()

' Render a PDF from a URL
Dim pdfDocument = chromePdfRenderer.RenderUrlAsPdf("https://ironpdf.com/")

' Send the PDF to the default printer
pdfDocument.Print()

' Create a PrintDocument object that can be used for further configurations
Dim printDocument As System.Drawing.Printing.PrintDocument = pdfDocument.GetPrintDocument()
$vbLabelText   $csharpLabel

Ici, un fichier PDF est créé à partir d'une URL spécifiée, puis imprimé.

How to Send PDFs to PRinter Using C#, Figure 7: Imprimer le PDF généré à partir de l'URL

Imprimer le PDF généré à partir de l'URL

4. Options d'impression avancées

IronPDF est un logiciel polyvalent et parfaitement capable de gérer les fonctionnalités d'impression telles que la recherche d'une imprimante et le réglage de la résolution d'impression.

4.1 Spécifiez l'imprimante

Pour spécifier l'imprimante, il vous suffit d'obtenir l'objet document d'impression actuel (à l'aide de la méthode GetPrintDocument ), puis d'utiliser la propriété PrinterSettings.PrinterName . Vous pouvez choisir n'importe quelle imprimante disponible.

using (var printDocument = pdfDocument.GetPrintDocument())
{
    // Specify the printer name
    printDocument.PrinterSettings.PrinterName = "Microsoft Print to PDF";

    // Print the document
    printDocument.Print();
}
using (var printDocument = pdfDocument.GetPrintDocument())
{
    // Specify the printer name
    printDocument.PrinterSettings.PrinterName = "Microsoft Print to PDF";

    // Print the document
    printDocument.Print();
}
Using printDocument = pdfDocument.GetPrintDocument()
	' Specify the printer name
	printDocument.PrinterSettings.PrinterName = "Microsoft Print to PDF"

	' Print the document
	printDocument.Print()
End Using
$vbLabelText   $csharpLabel

Dans l'exemple de code ci-dessus, " Microsoft Print to PDF " est sélectionné comme imprimante. Vous trouverez plus d'informations sur la configuration des paramètres d'impression spécifiques dans les pages de documentation.

4.2 Définir la résolution de l'imprimante

Vous pouvez également définir la résolution d'impression d'un PDF. La résolution fait référence à la qualité d'impression en termes de nombre de pixels. Vous pouvez définir la résolution de votre document d'impression à l'aide de la propriété DefaultPageSettings.PrinterResolution du document PDF.

// Set custom printer resolution
printDocument.DefaultPageSettings.PrinterResolution = new System.Drawing.Printing.PrinterResolution
{
    Kind = System.Drawing.Printing.PrinterResolutionKind.Custom,
    X = 1200,
    Y = 1200
};
// Set custom printer resolution
printDocument.DefaultPageSettings.PrinterResolution = new System.Drawing.Printing.PrinterResolution
{
    Kind = System.Drawing.Printing.PrinterResolutionKind.Custom,
    X = 1200,
    Y = 1200
};
' Set custom printer resolution
printDocument.DefaultPageSettings.PrinterResolution = New System.Drawing.Printing.PrinterResolution With {
	.Kind = System.Drawing.Printing.PrinterResolutionKind.Custom,
	.X = 1200,
	.Y = 1200
}
$vbLabelText   $csharpLabel

4.3 Suivi des processus d'impression à l'aide de C

Dans l'exemple de code suivant, vous verrez comment modifier le nom de l'imprimante, définir la résolution et obtenir le nombre de pages imprimées.

int printedPages;

using (var printDocument = pdfDocument.GetPrintDocument())
{
    // Specify the printer name
    printDocument.PrinterSettings.PrinterName = "Microsoft Print to PDF";

    // Set custom printer resolution
    printDocument.DefaultPageSettings.PrinterResolution = new System.Drawing.Printing.PrinterResolution
    {
        Kind = System.Drawing.Printing.PrinterResolutionKind.Custom,
        X = 1200,
        Y = 1200
    };

    // Track number of printed pages
    printedPages = 0;
    printDocument.PrintPage += (sender, args) => printedPages++;

    // Print the document
    printDocument.Print();
}
int printedPages;

using (var printDocument = pdfDocument.GetPrintDocument())
{
    // Specify the printer name
    printDocument.PrinterSettings.PrinterName = "Microsoft Print to PDF";

    // Set custom printer resolution
    printDocument.DefaultPageSettings.PrinterResolution = new System.Drawing.Printing.PrinterResolution
    {
        Kind = System.Drawing.Printing.PrinterResolutionKind.Custom,
        X = 1200,
        Y = 1200
    };

    // Track number of printed pages
    printedPages = 0;
    printDocument.PrintPage += (sender, args) => printedPages++;

    // Print the document
    printDocument.Print();
}
Dim printedPages As Integer

Using printDocument = pdfDocument.GetPrintDocument()
	' Specify the printer name
	printDocument.PrinterSettings.PrinterName = "Microsoft Print to PDF"

	' Set custom printer resolution
	printDocument.DefaultPageSettings.PrinterResolution = New System.Drawing.Printing.PrinterResolution With {
		.Kind = System.Drawing.Printing.PrinterResolutionKind.Custom,
		.X = 1200,
		.Y = 1200
	}

	' Track number of printed pages
	printedPages = 0
'INSTANT VB WARNING: An assignment within expression was extracted from the following statement:
'ORIGINAL LINE: printDocument.PrintPage += (sender, args) => printedPages++;
	AddHandler printDocument.PrintPage, Sub(sender, args) printedPages
	printedPages += 1

	' Print the document
	printDocument.Print()
End Using
$vbLabelText   $csharpLabel

5. Résumé

IronPDF est une solution complète pour travailler avec des documents PDF. Il permet de convertir différents formats en PDF. La manipulation et la mise en forme des fichiers PDF deviennent très faciles grâce aux fonctions de la bibliothèque IronPDF. Quelques lignes de code suffisent pour créer et formater le fichier PDF. Il est également possible d'imprimer des PDF par programmation. Il procède en envoyant un fichier PDF à l'imprimante par défaut de l'ordinateur. Nous pouvons soit afficher des fenêtres de dialogue d'impression aux utilisateurs, soit imprimer en mode silencieux en utilisant les surcharges de la méthode Print .

A free trial of IronPDF is also available to test its full potential to generate and print PDF documents in your applications. Vous trouverez plus d'informations sur les licences en suivant ce lien .

De plus, l' offre spéciale actuelle vous permet d'obtenir cinq produits Iron Software pour le prix de deux seulement.

Questions Fréquemment Posées

Comment puis-je imprimer un document PDF programmétiquement en C# ?

Vous pouvez utiliser IronPDF pour imprimer des documents PDF de manière programmée en C#. En utilisant des méthodes telles que Print, vous pouvez envoyer des PDF à une imprimante par défaut ou spécifiée avec des options d'impression personnalisables.

Quelles sont les étapes pour installer la bibliothèque PDF pour l'impression en C# ?

Pour installer la bibliothèque IronPDF, vous pouvez utiliser le gestionnaire de paquets NuGet dans Visual Studio, la console de gestion des paquets NuGet, ou ajouter la bibliothèque via des fichiers DLL.

Puis-je créer un PDF à partir de HTML en utilisant cette bibliothèque ?

Oui, IronPDF vous permet de créer un PDF à partir de HTML en utilisant la méthode RenderHtmlAsPdf. Cela permet la conversion de HTML, CSS et JavaScript en documents PDF.

Comment puis-je envoyer un PDF à une imprimante spécifique en utilisant cette bibliothèque ?

Pour envoyer un PDF à une imprimante spécifique, vous pouvez définir la propriété PrinterSettings.PrinterName de l'objet PrintDocument dans IronPDF au nom de l'imprimante souhaitée.

Quelles options d'impression avancées cette bibliothèque prend-elle en charge ?

IronPDF prend en charge des options d'impression avancées telles que la spécification des paramètres de l'imprimante, l'ajustement de la résolution d'impression, et le suivi du nombre de pages imprimées.

Est-il possible de définir des résolutions d'impression personnalisées avec cette bibliothèque PDF ?

Oui, vous pouvez définir des résolutions d'impression personnalisées en utilisant la propriété DefaultPageSettings.PrinterResolution de l'objet PrintDocument dans IronPDF.

Comment puis-je rendre une URL en PDF avec cette bibliothèque ?

Vous pouvez rendre une URL en PDF en utilisant la méthode RenderUrlAsPdf d'IronPDF, qui vous permet de convertir des pages web en documents PDF.

Cette bibliothèque propose-t-elle un essai gratuit ?

Oui, IronPDF propose un essai gratuit permettant aux utilisateurs d'explorer ses capacités dans la génération et l'impression de documents PDF.

Puis-je suivre le nombre de pages imprimées en utilisant cette bibliothèque ?

Oui, IronPDF vous permet de suivre le nombre de pages imprimées en accédant aux propriétés de l'objet PrintDocument lors d'un travail d'impression.

Avec quelles plateformes cette bibliothèque d'impression PDF est-elle compatible ?

IronPDF est compatible avec diverses plateformes, y compris Windows, macOS, Android et iOS, ce qui le rend polyvalent pour différents environnements de développement.

Curtis Chau
Rédacteur technique

Curtis Chau détient un baccalauréat en informatique (Université de Carleton) et se spécialise dans le développement front-end avec expertise en Node.js, TypeScript, JavaScript et React. Passionné par la création d'interfaces utilisateur intuitives et esthétiquement plaisantes, Curtis aime travailler avec des frameworks modernes ...

Lire la suite