Comment définir la taille de papier pour imprimer un document en C

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

La classe PrintSettings d'IronPrint offre aux développeurs un contrôle direct sur la taille de papier via la propriété PaperSize. Nous assignons une valeur de l'énumération PaperSize — telle que PaperSize.A4 ou PaperSize.Letter — et transmettons l'objet PrintSettings configuré à l'une des méthodes d'impression d'IronPrint. L'imprimante utilise ensuite cette taille de papier exacte pour le travail.

Ce guide explique comment définir des tailles de papier standard, combiner la taille avec d'autres paramètres d'impression et imprimer un document de manière asynchrone — le tout avec du code C# fonctionnel.

Démarrage rapide : Définir la taille de papier

  1. Installez IronPrint via NuGet : Install-Package IronPrint
  2. Ajoutez using IronPrint; au fichier
  3. Créez un objet PrintSettings
  4. Réglez PaperSize sur n'importe quelle valeur de l'énumération PaperSize (par exemple, PaperSize.A4)
  5. Passez les paramètres à Printer.Print() ou Printer.PrintAsync()
  1. Installez IronPrint avec le Gestionnaire de Packages NuGet

    PM > Install-Package IronPrint
  2. Copiez et exécutez cet extrait de code.

    using IronPrint;
    
    // Print a PDF on A4 paper
    Printer.Print("report.pdf", new PrintSettings
    {
        PaperSize = PaperSize.A4
    });
  3. Déployez pour tester sur votre environnement de production.

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

    arrow pointer

Comment définir la taille de papier lors de l'impression en C# ?

Nous définissons la taille de papier en attribuant une valeur de l'énumération PaperSize à la propriété PaperSize d'un objet PrintSettings. Nous passons ensuite cet objet à l'une des méthodes d'impression d'IronPrint.

:path=/static-assets/print/content-code-examples/how-to/set-paper-size/set-paper-size-set-paper-size.cs
using IronPrint;

// Configure print settings with US Letter paper
PrintSettings settings = new PrintSettings();
settings.PaperSize = PaperSize.Letter;

// Send the document to the default printer
Printer.Print("invoice.pdf", settings);
Imports IronPrint

' Configure print settings with US Letter paper
Dim settings As New PrintSettings()
settings.PaperSize = PaperSize.Letter

' Send the document to the default printer
Printer.Print("invoice.pdf", settings)
$vbLabelText   $csharpLabel

Nous créons d'abord une instance de PrintSettings, initialisée avec les paramètres par défaut de l'imprimante. Nous remplaçons ensuite PaperSize par PaperSize.Letter, qui correspond au format standard de 8,5 × 11 pouces. Lorsque nous appelons Printer.Print, IronPrint envoie le document à l'imprimante par défaut du système en utilisant cette taille de papier.

Si aucun PaperSize n'est spécifié, IronPrint utilise PaperSize.PrinterDefault, qui se réfère à la taille de papier par défaut de l'imprimante configurée par le système d'exploitation. C'est un détail essentiel pour les environnements de production où les configurations d'imprimante varient d'une machine à l'autre.

Quelles tailles de papier la bibliothèque prend-elle en charge ?

L'énumération PaperSize inclut douze valeurs couvrant les normes internationales ISO, les tailles courantes aux États-Unis et le paramètre par défaut de l'imprimante. Le tableau ci-dessous liste chaque option disponible.

Valeur de l'énumération Standard Dimensions (mm) Dimensions (pouces)
PaperSize.A0 ISO A0 841 × 1189 33.1 × 46.8
PaperSize.A1 ISO A1 594 × 841 23.4 × 33.1
PaperSize.A2 ISO A2 420 × 594 16.5 × 23.4
PaperSize.A3 ISO A3 297 × 420 11.7 × 16.5
PaperSize.A4 ISO A4 210 × 297 8.3 × 11.7
PaperSize.A5 ISO A5 148 × 210 5.8 × 8.3
PaperSize.B4 ISO B4 250 × 353 9.8 × 13.9
PaperSize.B5 ISO B5 176 × 250 6.9 × 9.8
PaperSize.Letter Lettre pour les États-Unis 216 × 279 8.5 × 11.0
PaperSize.Legal US Legal 216 × 356 8.5 × 14.0
PaperSize.Executive US Executive 184 × 267 7.25 × 10.5
PaperSize.PrinterDefault Par défaut de l'imprimante Variable Variable

Chaque valeur correspond directement à une norme de papier bien connue. L'option PrinterDefault indique à IronPrint d'utiliser la taille que l'imprimante est actuellement configurée pour utiliser — utile lorsque vous souhaitez respecter les préférences de l'utilisateur final plutôt que d'imposer un format spécifique.

Pour une référence complète de l'API, consultez la documentation de la classe PaperSize.

Comment combiner la taille de papier avec d'autres paramètres d'impression ?

La classe PrintSettings expose plusieurs propriétés au-delà de PaperSize. Nous pouvons configurer l'orientation, les DPI, les marges, le nombre de copies et le mode niveaux de gris — le tout dans un seul objet.

:path=/static-assets/print/content-code-examples/how-to/set-paper-size/set-paper-size-combined-settings.cs
using IronPrint;

// Build a fully configured print job
PrintSettings settings = new PrintSettings
{
    PaperSize = PaperSize.A4,
    PaperOrientation = PaperOrientation.Landscape,
    Dpi = 300,
    NumberOfCopies = 3,
    PaperMargins = new Margins(15, 15, 15, 15),
    Grayscale = false
};

// Print a multi-page report with these settings
Printer.Print("quarterly-report.pdf", settings);
Imports IronPrint

' Build a fully configured print job
Dim settings As New PrintSettings With {
    .PaperSize = PaperSize.A4,
    .PaperOrientation = PaperOrientation.Landscape,
    .Dpi = 300,
    .NumberOfCopies = 3,
    .PaperMargins = New Margins(15, 15, 15, 15),
    .Grayscale = False
}

' Print a multi-page report with these settings
Printer.Print("quarterly-report.pdf", settings)
$vbLabelText   $csharpLabel

Nous utilisons la syntaxe de l'initialiseur d'objet ici pour plus de clarté. PaperOrientation.Landscape fait pivoter la feuille A4 sur son axe le plus large. Dpi à 300 assure une sortie nette pour les graphiques et le texte fin. PaperMargins accepte quatre valeurs en millimètres — haut, droite, bas, gauche — via le constructeur Margins. La propriété Grayscale est par défaut à false, mais nous la définissons explicitement pour plus de lisibilité.

Ces propriétés fonctionnent ensemble sans conflit. IronPrint valide la configuration et transmet les paramètres combinés au pilote d'imprimante sous forme d'un seul travail d'impression. Pour des paramètres plus avancés comme la sélection d'imprimante et la configuration du tiroir, référez-vous au guide complet des paramètres d'impression.

Comment imprimer de manière asynchrone avec une taille de papier personnalisée ?

Pour les applications où bloquer le thread principal n'est pas une option — telles que les apps WPF ou WinForms — nous utilisons Printer.PrintAsync. La méthode accepte le même objet PrintSettings et retourne un Task.

:path=/static-assets/print/content-code-examples/how-to/set-paper-size/set-paper-size-async-print.cs
using IronPrint;
using System.Threading.Tasks;

public class DocumentPrinter
{
    public async Task PrintLegalDocumentAsync(string filePath)
    {
        // Configure Legal paper size for contracts and legal documents
        PrintSettings settings = new PrintSettings
        {
            PaperSize = PaperSize.Legal,
            PaperOrientation = PaperOrientation.Portrait,
            Dpi = 300
        };

        // Print without blocking the UI thread
        await Printer.PrintAsync(filePath, settings);
    }
}
Imports IronPrint
Imports System.Threading.Tasks

Public Class DocumentPrinter
    Public Async Function PrintLegalDocumentAsync(filePath As String) As Task
        ' Configure Legal paper size for contracts and legal documents
        Dim settings As New PrintSettings With {
            .PaperSize = PaperSize.Legal,
            .PaperOrientation = PaperOrientation.Portrait,
            .Dpi = 300
        }

        ' Print without blocking the UI thread
        Await Printer.PrintAsync(filePath, settings)
    End Function
End Class
$vbLabelText   $csharpLabel

Cet exemple basé sur une classe démontre un modèle réaliste où un service DocumentPrinter enveloppe la logique d'impression. Nous configurons PaperSize.Legal (8,5 × 14 pouces), qui est le format standard pour les contrats et les documents juridiques. Le mot-clé await garantit que le thread appelant reste réactif pendant qu'IronPrint traite le travail d'impression.

Nous pouvons appeler cette méthode depuis un gestionnaire de clics de bouton, un service en arrière-plan ou n'importe où où await est pris en charge. Les méthodes asynchrones d'IronPrint — y compris PrintAsync et ShowPrintDialogAsync — acceptent la même configuration PrintSettings, donc le comportement de la taille de papier est identique entre les chemins synchrones et asynchrones.

Quelles Sont Mes Prochaines Étapes ?

Nous avons couvert comment définir la taille de papier en C# en utilisant l'énumération PaperSize d'IronPrint, de la configuration de base d'une seule propriété aux paramètres combinés et à l'impression asynchrone. La classe PrintSettings fournit une API propre et fortement typée qui élimine les incertitudes sur les dimensions du papier.

Pour continuer à explorer les capacités d'IronPrint :

Commencez un essai gratuit de 30 jours pour tester la configuration de la taille de papier dans vos propres projets, ou consultez les options de licence pour le déploiement en production.

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
Prêt à commencer?
Nuget Téléchargements 38,930 | Version : 2026.4 vient de sortir
Still Scrolling Icon

Vous faites encore défiler ?

Vous voulez une preuve rapidement ? PM > Install-Package IronPrint
exécuter un échantillon regarder votre document sortir de l'imprimante.