Imprimer un fichier PDF en Python | Imprimer un PDF sur une imprimante | Impression de PDF

L’impression d’un document PDF est une exigence courante dans le développement d’applications. Que vous génériez des rapports, des factures ou tout autre type de document, l’impression d’un fichier PDF directement du code vers une imprimante peut s’avérer une fonctionnalité précieuse. Dans cet article de blog, nous apprendrons comment imprimer un fichier PDF sur une imprimante en Python.

Cet article couvre les sujets suivants :

Bibliothèque Python pour imprimer un PDF sur une imprimante

Pour imprimer un fichier PDF en Python par programme, nous utiliserons la bibliothèque Aspose.PDF for Python via .NET. Avec une installation et une utilisation simples, il fournit une solution efficace pour envoyer des fichiers PDF à l’imprimante à l’aide du code Python. Aspose.PDF for Python permet aux développeurs de générer, manipuler et convertir des documents PDF dans leurs applications Python.

Pour commencer à imprimer un document PDF en Python, nous devons d’abord installer les bibliothèques nécessaires. Veuillez télécharger le package ou installer l’API depuis PyPI à l’aide de la commande pip suivante dans la console :

> pip install aspose-pdf

Nous pouvons facilement imprimer un fichier PDF par programme en Python en suivant les étapes ci-dessous :

  1. Créez une instance de la classe PdfViewer.
  2. Chargez le document PDF d’entrée à l’aide de la méthode bindpdf().
  3. Après cela, appelez la méthode printdocument() pour imprimer le fichier PDF.
  4. Enfin, fermez la visionneuse PDF à l’aide de la méthode close().

L’exemple de code suivant montre comment imprimer un fichier PDF en Python.

# Cet exemple de code montre comment imprimer un fichier PDF en Python.
import aspose.pdf as ap

# Créer un objet PdfViewer
viewer = ap.facades.PdfViewer();

# Ouvrir le fichier PDF d'entrée
viewer.bind_pdf("Document.pdf");

# Imprimer un document PDF
viewer.print_document();

# Fermer le fichier PDF
viewer.close();

Nous pouvons également imprimer par lots des fichiers PDF à partir d’un dossier en Python en suivant les étapes ci-dessous :

  1. Chargez les fichiers PDF à partir du chemin de dossier fourni.
  2. Parcourez tous les fichiers PDF.
  3. Créez une instance de la classe PdfViewer.
  4. Liez chaque fichier PDF d’entrée un par un à l’aide de la méthode bindpdf().
  5. Après cela, appelez la méthode printdocument() pour imprimer le fichier PDF.
  6. Enfin, fermez la visionneuse PDF à l’aide de la méthode close().

L’exemple de code suivant montre comment imprimer plusieurs fichiers PDF en Python.

# Cet exemple de code montre comment imprimer plusieurs fichiers PDF à la fois en Python.
import os
import aspose.pdf as ap

# Chemin du répertoire contenant les fichiers PDF à imprimer
path = "D:\\Files\\"

# Obtenir des fichiers PDF
files = [f for f in os.listdir(path) if f.endswith(".pdf")]

# Lire tous les fichiers et imprimer
for file in files:
    # Créer un objet PdfViewer
    viewer = ap.facades.PdfViewer();
    
    # Ouvrir le fichier PDF d'entrée
    viewer.bind_pdf(path + file);
    
    # Imprimer un document PDF
    viewer.print_document();
    
    # Fermer le fichier PDF
    viewer.close();

Dans certains cas, nous pouvons avoir besoin d’imprimer une plage spécifique de pages à partir d’un document PDF. Pour cela, nous devons spécifier les numéros de page de et vers. Nous pouvons imprimer la plage de pages en suivant les étapes ci-dessous :

  1. Créez une instance de la classe PdfViewer.
  2. Chargez le document PDF d’entrée à l’aide de la méthode bindpdf().
  3. Vous pouvez éventuellement spécifier divers attributs de visionneuse, tels que le redimensionnement automatique, la rotation automatique, etc.
  4. Créez une instance de la classe PageSettings.
  5. Initialisez l’objet de classe PrinterSettings.
  6. Spécifiez les propriétés printrange, frompage et topage.
  7. Après cela, appelez la méthode viewer.printdocumentwithsettings() pour imprimer le document en utilisant les paramètres de l’imprimante et de la page.
  8. Enfin, fermez la visionneuse PDF à l’aide de la méthode close().

L’exemple de code suivant montre comment imprimer des pages spécifiques d’un document PDF en Python.

# Cet exemple de code montre comment imprimer une plage de pages à partir d'un fichier PDF en Python.
import aspose.pdf as ap

# Créer un objet PdfViewer
viewer = ap.facades.PdfViewer();

# Ouvrir le fichier PDF d'entrée
viewer.bind_pdf("Document.pdf");

# Définir les attributs pour l'impression
viewer.auto_resize = True
viewer.auto_rotate = True
viewer.print_page_dialog = False

# Créer des objets pour les paramètres d'imprimante et de page et PrintDocument
pgs = ap.printing.PageSettings();
ps = ap.printing.PrinterSettings();

# Définir le nom de l'imprimante
ps.printer_name = "Microsoft Print to PDF";

ps.print_range = ap.printing.PrintRange.SOME_PAGES;
ps.from_page = 1;
ps.to_page = 2;

# Imprimer un document à l'aide des paramètres de l'imprimante et de la page
viewer.print_document_with_settings(pgs, ps);

# Fermer le fichier PDF
viewer.close();

Spécifier la taille de la page pour l’impression d’un PDF

De même, nous pouvons également spécifier la taille de la page lors de l’impression du fichier PDF en suivant les étapes mentionnées précédemment. Cependant, il suffit de spécifier le format du papier à l’aide de la classe PaperSize et les marges à l’aide de la classe Margins à l’étape 6.

L’exemple de code suivant montre comment imprimer le document PDF avec une taille de page et des marges spécifiques à l’aide de Python.

# Cet exemple de code montre comment imprimer une plage de pages à partir d'un fichier PDF en Python.
import aspose.pdf as ap

# Créer un objet PdfViewer
viewer = ap.facades.PdfViewer();

# Ouvrir le fichier PDF d'entrée
viewer.bind_pdf("Document.pdf");

# Définir les attributs pour l'impression
viewer.auto_resize = True
viewer.auto_rotate = True
viewer.print_page_dialog = False

# Créer des objets pour les paramètres d'imprimante et de page et PrintDocument
pgs = ap.printing.PageSettings();
ps = ap.printing.PrinterSettings();

# Définir le nom de l'imprimante
ps.printer_name = "Microsoft Print to PDF";

ps.print_range = ap.printing.PrintRange.SOME_PAGES;
ps.from_page = 1;
ps.to_page = 2;

# Définir la taille de la page (si nécessaire)
pgs.paper_size = ap.printing.PaperSize("A4", 827, 1169);

# Définir les marges de page (si nécessaire)
pgs.margins = ap.devices.Margins(0, 0, 0, 0);

# Imprimer un document à l'aide des paramètres de l'imprimante et de la page
viewer.print_document_with_settings(pgs, ps);

# Fermer le fichier PDF
viewer.close();

Nous pouvons imprimer un fichier PDF sécurisé ou protégé par mot de passe en suivant les étapes ci-dessous :

  1. Chargez le PDF sécurisé avec un mot de passe à l’aide de la classe Document.
  2. Créez une instance de la classe PdfViewer.
  3. Liez le document PDF à l’aide de la méthode bindpdf().
  4. Après cela, appelez la méthode printdocument() pour imprimer le fichier PDF.
  5. Enfin, fermez la visionneuse PDF à l’aide de la méthode close().

L’exemple de code suivant montre comment imprimer un fichier PDF sécurisé en Python.

# Charger un document PDF sécurisé tout en spécifiant le mot de passe utilisateur ou propriétaire
document = ap.Document("Password.pdf" , "userORowner");

# Créer un objet PdfViewer
viewer = ap.facades.PdfViewer();

# Ouvrir le fichier PDF d'entrée
viewer.bind_pdf(document);

# Imprimer le document PDF
viewer.print_document();

# Fermer le fichier PDF
viewer.close();

Nous pouvons imprimer un document PDF en niveaux de gris en suivant les étapes ci-dessous :

  1. Chargez le document PDF d’entrée à l’aide de la classe Document.
  2. Initialisez l’objet de classe RgbToDeviceGrayConversionStrategy.
  3. Parcourez toutes les pages et convertissez-les en GrayScale à l’aide de la méthode stratégie.convert().
  4. Créez une instance de la classe PdfViewer.
  5. Liez le document PDF à l’aide de la méthode bindpdf().
  6. Après cela, appelez la méthode printdocument() pour imprimer le fichier PDF.
  7. Enfin, fermez la visionneuse PDF à l’aide de la méthode close().

L’exemple de code suivant montre comment convertir un PDF en niveaux de gris, puis l’imprimer à l’aide de Python.

# Cet exemple de code montre comment imprimer un fichier PDF en niveaux de gris en Python.
import aspose.pdf as ap

# Charger le document PDF d'entrée
document = ap.Document("D:\\Files\\Output.pdf");

# Lancer la stratégie de conversion RVB vers Device Gry
strategy = ap.RgbToDeviceGrayConversionStrategy();

# Parcourez toutes les pages
for page in document.pages:
    # Convertir l'image de l'espace colorimétrique RVB en espace colorimétrique GrayScale
    strategy.convert(page);

# Créer un objet PdfViewer
viewer = ap.facades.PdfViewer();

# Ouvrir le fichier PDF d'entrée
viewer.bind_pdf(document);

# Imprimer le document PDF
viewer.print_document();

# Fermer le fichier PDF
viewer.close();

Obtenez une licence gratuite

Vous pouvez obtenir une licence temporaire afin d’utiliser la bibliothèque sans limitations d’évaluation.

Imprimer PDF – Ressources gratuites

Outre l’impression de PDF sur une imprimante en Python, apprenez-en davantage sur la création, la manipulation et la conversion de documents PDF, et explorez diverses autres fonctionnalités de la bibliothèque à l’aide des ressources ci-dessous :

Conclusion

Dans cet article, nous avons appris comment imprimer un fichier PDF en Python. En tirant parti d’Aspose.PDF for Python, vous pouvez facilement envoyer vos fichiers PDF à une imprimante à partir de votre code Python. Cette fonctionnalité puissante permet aux utilisateurs de générer des rapports et de gérer les flux de documents de manière transparente dans différentes applications. En suivant les étapes décrites dans cet article de blog, vous pouvez automatiser la tâche d’impression des PDF. En cas d’ambiguïté, n’hésitez pas à nous contacter sur notre forum d’assistance gratuit.

Voir également