Comment imprimer des fichiers PDF C

Chaknith related to Comment imprimer des fichiers PDF C
Chaknith Bin
octobre 10, 2023
Mise à jour janvier 6, 2025
Partager:
This article was translated from English: Does it need improvement?
Translated
View the article in English

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 les PrinterSettings et le PrintController de Microsoft pour un contrôle accru sur le 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 disponible 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 sous forme de 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")
$vbLabelText   $csharpLabel
Fichier 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 horizontales et verticales. Pour utiliser différentes valeurs DPI, passez deux paramètres à la méthode : le premier pour le DPI horizontal (x) et le second pour le DPI vertical (y).

: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")
$vbLabelText   $csharpLabel

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


Imprimer dans un fichier

La méthode PrintToFile rasterize efficacement les documents PDF en les convertissant en images bitmap (basées sur des pixels) et en les enregistrant sous forme de fichier PDF. Ce processus est géré par l'imprimante intégrée de Windows, comme "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("")
$vbLabelText   $csharpLabel

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()
$vbLabelText   $csharpLabel
  • CanDuplex : Indique si l'imprimante prend en charge l'impression recto-verso (double face). 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.
  • Assembler : Spécifie si plusieurs fichiers PDF ou copies d'un document PDF doivent être assemblés (organisés dans l'ordre) lors de l'impression. Lorsque cette option est activée, l'imprimante assemble les copies ; s'il est faux, il ne l'est pas.
  • Copies : Définit 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 de l'imprimante, y compris la taille de papier, les marges et l'orientation.
  • Duplex : Spécifie le mode d'impression recto-verso à utiliser. Les options incluent Duplex.Default, Duplex.Simplex (simple face), 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 l'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 l'impression de fichiers PDF.
  • LandscapeAngle : Spécifie l'angle (rotation) de l'orientation paysage pour l'imprimante, généralement 90 degrés pour le mode portrait.
  • MaximumCopies : Représente le nombre maximum de copies qui peuvent être spécifiées pour l'impression de PDF.
  • MaximumPage : Spécifie le numéro de page maximum qui peut ê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 de papier ou de bacs 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'imprimante disponibles, vous permettant de choisir la qualité d'impression.
  • PrintFileName : Obtient ou définit le nom de fichier lors de l'impression vers un fichier en utilisant PrintToFile.
  • PrintRange : Spécifie la plage de pages PDF à imprimer, telle que 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 finale pour l'impression ou la conversion. L'impression s'arrêtera après avoir atteint cette page.
  • PrintToFile : Indique s'il faut imprimer dans 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 couleur. Si c'est le cas, l'impression en couleur est prise en charge ; sinon, il est limité à l'impression en noir et blanc (monochrome).

    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
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.