Comment imprimer des fichiers PDF C

This article was translated from English: Does it need improvement?
Translated
View the article in English

par Chaknith Bin

L'envoi d'un PDF à une imprimante à partir d'un code .NET C# automatise le processus d'impression, ce qui vous permet d'intégrer une fonctionnalité d'impression dans vos applications, de réduire les efforts manuels et d'assurer la cohérence de la production de fichiers PDF. Il permet un contrôle précis du processus d'impression.

IronPDF offre la possibilité d'imprimer rapidement par programme sur une imprimante physique en un seul appel de méthode, ce qui vous permet d'imprimer plusieurs fichiers PDF. La résolution de l'imprimante peut également être spécifiée avec des DPI horizontaux et verticaux configurables. Utilisez la méthode qui accepte à la fois Microsoft PrinterSettings et PrintController pour un meilleur contrôle du processus d'impression PDF.


Commencez avec IronPDF

Commencez à utiliser IronPDF dans votre projet dès aujourd'hui avec un essai gratuit.

Première étape :
green arrow pointer


Exemple d'impression d'un fichier PDF

La méthode Print est accessible via l'objet PdfDocument, vous permettant d'imprimer des fichiers PDF nouvellement créés et existants. Par défaut, la méthode utilise l'imprimante par défaut du système, mais vous pouvez spécifier une autre imprimante en passant son nom en tant que chaîne à la méthode Print.

A noter
Toutes les fonctions d'impression ne sont prises en charge que sous "Windows".

:path=/static-assets/pdf/content-code-examples/how-to/print-pdf-print.cs
using IronPdf;

ChromePdfRenderer renderer = new ChromePdfRenderer();

PdfDocument pdf = renderer.RenderHtmlAsPdf("<h1>Test printing</h1>");

// Send the document to "Microsoft Print to PDF" printer
pdf.Print("Microsoft Print to PDF");
Imports IronPdf

Private renderer As New ChromePdfRenderer()

Private pdf As PdfDocument = renderer.RenderHtmlAsPdf("<h1>Test printing</h1>")

' Send the document to "Microsoft Print to PDF" printer
pdf.Print("Microsoft Print to PDF")
VB   C#
File d'attente d'impression

Résolution de l'imprimante

Vous pouvez spécifier la résolution du PDF imprimé en fournissant la valeur DPI souhaitée à la méthode Print, qui appliquera le même DPI pour les dimensions horizontale et verticale. Pour utiliser différentes valeurs de DPI, passez deux paramètres à la méthode : le premier pour l'horizontale(x)DPI et le second pour vertical(y)PPP.

:path=/static-assets/pdf/content-code-examples/how-to/print-pdf-dpi.cs
using IronPdf;

ChromePdfRenderer renderer = new ChromePdfRenderer();

PdfDocument pdf = renderer.RenderHtmlAsPdf("<h1>Test printing</h1>");

// Set custom DPI
pdf.Print(300);

// Specify printing resolution
pdf.Print(10, 10, "Microsoft Print to PDF");
Imports IronPdf

Private renderer As New ChromePdfRenderer()

Private pdf As PdfDocument = renderer.RenderHtmlAsPdf("<h1>Test printing</h1>")

' Set custom DPI
pdf.Print(300)

' Specify printing resolution
pdf.Print(10, 10, "Microsoft Print to PDF")
VB   C#

Dans l'exemple suivant, nous verrons comment rastériser et imprimer un fichier PDF.


Imprimer dans un fichier

La méthode PrintToFile rasterise efficacement les documents PDF en les convertissant en bitmap.(basé sur les pixels)images et les enregistrer sous forme de fichier PDF. Ce processus est géré par l'imprimante intégrée de Windows, telle que "Microsoft Print to PDF." Notamment, cette méthode enregistre le PDF sur le disque sans l'envoyer à une imprimante physique.

:path=/static-assets/pdf/content-code-examples/how-to/print-pdf-print-to-file.cs
using IronPdf;

ChromePdfRenderer renderer = new ChromePdfRenderer();

PdfDocument pdf = renderer.RenderHtmlAsPdf("<h1>Test printing</h1>");

// Print to file
pdf.PrintToFile("");
Imports IronPdf

Private renderer As New ChromePdfRenderer()

Private pdf As PdfDocument = renderer.RenderHtmlAsPdf("<h1>Test printing</h1>")

' Print to file
pdf.PrintToFile("")
VB   C#

Explorer les paramètres d'impression d'un document PDF

Pour personnaliser les options d'impression, utilisez la méthode GetPrintDocument, qui accepte les objets Microsoft PrinterSettings et PrintController. Cette méthode renvoie l'objet actuel du document à imprimer. Les PrinterSettings vous permettent de configurer des options telles que la plage de pages et la sélection de l'imprimante, tandis que PrintController permet de contrôler le processus d'impression, y compris la gestion des exceptions, le rapport de progression, les boîtes de dialogue d'impression, les aperçus avant impression, et d'autres tâches connexes. Des descriptions détaillées des options PrinterSettings sont fournies ci-dessous l'exemple de code.

:path=/static-assets/pdf/content-code-examples/how-to/print-pdf-printer-setting.cs
using IronPdf;
using System.Drawing.Printing;

ChromePdfRenderer renderer = new ChromePdfRenderer();

PdfDocument pdf = renderer.RenderHtmlAsPdf("<h1>Testing</h1>");

PrinterSettings settings = new PrinterSettings() {
    PrinterName = "Microsoft Print to PDF",

    // Number of Copy
    Copies = 2,

    // Page range to print
    FromPage = 2,
    ToPage = 4,
};

PrintDocument document = pdf.GetPrintDocument(settings);

// Print
document.Print();
Imports IronPdf
Imports System.Drawing.Printing

Private renderer As New ChromePdfRenderer()

Private pdf As PdfDocument = renderer.RenderHtmlAsPdf("<h1>Testing</h1>")

Private settings As New PrinterSettings() With {
	.PrinterName = "Microsoft Print to PDF",
	.Copies = 2,
	.FromPage = 2,
	.ToPage = 4
}

Private document As PrintDocument = pdf.GetPrintDocument(settings)

' Print
document.Print()
VB   C#
  • CanDuplex : Indique si l’imprimante prend en charge le mode recto verso(double face) l'impression. Si c'est le cas, il est possible d'imprimer sur les deux faces du papier ; dans le cas contraire, il ne le peut pas.
  • Collationner : Spécifie si plusieurs fichiers PDF ou copies d'un document PDF doivent être assemblés.(organisé dans l'ordre) à l'impression. Lorsque cette option est activée, l'imprimante assemble les copies ; s'il est faux, il ne l'est pas.
  • Copies : Détermine le nombre de copies du document PDF à imprimer. Il détermine le nombre de copies identiques du document qui seront imprimées.
  • DefaultPageSettings : Représente les paramètres de page par défaut pour l'imprimante, y compris la taille du papier, les marges et l'orientation.
  • Duplex : Spécifie le duplex(double face) le mode d'impression à utiliser. Les options comprennent Duplex.Default, Duplex.Simplex(unilatéral)duplex.Horizontal, et Duplex.Vertical.
  • InstalledPrinters : Fournit une collection de noms d'imprimantes installées sur le système. Vous pouvez parcourir cette collection pour obtenir les noms des imprimantes disponibles.
  • IsDefaultPrinter: Indique si l'imprimante spécifiée dans PrinterName est définie comme imprimante par défaut sur le système.
  • IsPlotter : Détermine si l'imprimante est un traceur. Les imprimantes à traceur sont souvent utilisées pour l'impression de grands formats, comme les dessins d'architecture ou d'ingénierie.
  • IsValid : Indique si les paramètres de l'imprimante sont valides et peuvent être utilisés pour imprimer des fichiers PDF.
  • LandscapeAngle : Spécifie l'angle(rotation) de l'orientation paysage de l'imprimante, généralement 90 degrés pour le portrait.
  • MaximumCopies : Représente le nombre maximal de copies qui peuvent être spécifiées pour l'impression de PDF.
  • MaximumPage : Spécifie le numéro de page maximal pouvant être défini pour l'impression ou la conversion.
  • MinimumPage : Spécifie le numéro de page minimum qui peut être défini pour l'impression ou la conversion.
  • PaperSizes: Fournit une collection de tailles de papier prises en charge pour l'imprimante. Vous pouvez interroger cette collection pour déterminer les formats de papier disponibles.
  • PaperSources: Offre une collection de sources ou de bacs à papier disponibles pour l'imprimante. Cela peut s'avérer utile lors de la sélection de la source de papier pour l'impression de fichiers PDF.
  • PrinterName: Spécifie le nom de l'imprimante à utiliser pour l'impression ou la conversion.
  • PrinterResolutions : Fournit une collection de résolutions d'impression disponibles, vous permettant de choisir la qualité d'impression.
  • PrintFileName: Obtient ou définit le nom du fichier lors de l'impression vers un fichier à l'aide de PrintToFile.
  • PrintRange : Spécifie la plage de pages PDF à imprimer, comme toutes les pages, une plage spécifique ou une sélection. Permet d'imprimer des pages spécifiques.
  • FromPage : Spécifie le numéro de la page de départ pour l'impression ou la conversion. L'impression commencera à partir de cette page.
  • ToPage : Spécifie le numéro de la page de fin pour l'impression ou la conversion. L'impression s'arrêtera après avoir atteint cette page.
  • PrintToFile : Indique s'il faut imprimer sur un fichier au lieu d'une imprimante physique. Si elle est vraie, vous pouvez spécifier le chemin d'accès au fichier à l'aide de PrintFileName.
  • SupportsColor: Indique si l'imprimante prend en charge l'impression en couleur. Si c'est le cas, l'impression en couleur est prise en charge ; sinon, il est limité au noir et blanc(monochrome) l'impression.

    Enfin, pour configurer l'imprimante par défaut afin qu'elle imprime des PDF, vous pouvez vous rendre dans la section "Imprimantes et scanners" des paramètres de la machine.

Chaknith related to Explorer les paramètres d'impression d'un document PDF

Chaknith Bin

Ingénieur logiciel

Chaknith est le Sherlock Holmes des développeurs. C'est en s'amusant à relever des défis de code qu'il s'est rendu compte pour la première fois qu'il pourrait avoir un avenir dans le domaine de l'ingénierie logicielle. Il se concentre sur IronXL et IronBarcode, mais il est fier d'aider les clients avec chaque produit. Chaknith tire parti des connaissances qu'il a acquises en discutant directement avec les clients pour améliorer les produits eux-mêmes. Ses commentaires anecdotiques vont au-delà des tickets Jira et soutiennent le développement de produits, la documentation et le marketing, afin d'améliorer l'expérience globale des clients.Quand il n'est pas au bureau, on peut le trouver en train d'apprendre sur l'apprentissage automatique, le codage et la randonnée.